forked from linux/WebHosting_DMZ
Merge pull request 'CLIC: automatic Zenodo restore and container-managed nightly backups' (#52) from sacchi_r/WebHosting_DMZ:update-clic-archive-5bbfcaf into main
Reviewed-on: linux/WebHosting_DMZ#52
This commit is contained in:
commit
a30ff7bf25
1 file changed
+66
-5
+66
-5
@@ -147,7 +147,7 @@ services:
|
||||
# Romain Sacchi <romain.sacchi@psi.ch>
|
||||
# CLIC Django platform
|
||||
clic-web:
|
||||
image: ${CLIC_IMAGE:-gitea.psi.ch/images/clic:754f9f8}
|
||||
image: ${CLIC_IMAGE:-gitea.psi.ch/images/clic:ae59c15}
|
||||
container_name: clic-web
|
||||
restart: always
|
||||
env_file:
|
||||
@@ -159,6 +159,15 @@ services:
|
||||
- CLIC_CACHE_BACKEND=redis
|
||||
- CLIC_REDIS_URL=redis://clic-redis:6379/0
|
||||
- CLIC_REQUIRE_SHARED_CACHE=1
|
||||
- INVENTORY_ARCHIVE_ENVIRONMENT=production
|
||||
- INVENTORY_ARCHIVE_AUTO_RESTORE=1
|
||||
- INVENTORY_ARCHIVE_PUBLISH_MODE=off
|
||||
- INVENTORY_ARCHIVE_TERMS_REVIEWED=0
|
||||
- INVENTORY_ARCHIVE_TOKEN=
|
||||
- INVENTORY_ARCHIVE_OWNER_ID=86122
|
||||
- INVENTORY_ARCHIVE_SERIES_ID=22850223
|
||||
- INVENTORY_ARCHIVE_BOOTSTRAP_RECORD_ID=
|
||||
- INVENTORY_ARCHIVE_BOOTSTRAP_SHA256=
|
||||
volumes:
|
||||
- /mount/webhosting_dmz_write/clic/media:/app/media
|
||||
- /mount/webhosting_dmz_write/clic/impact_factors:/app/data/impact_factors:ro
|
||||
@@ -173,17 +182,17 @@ services:
|
||||
- CMD
|
||||
- python
|
||||
- -c
|
||||
- "import urllib.request; r = urllib.request.Request('http://127.0.0.1:8000/health/live/', headers={'Host': 'clic.psi.ch', 'X-Forwarded-Proto': 'https'}); urllib.request.urlopen(r, timeout=5)"
|
||||
- "import urllib.request; r = urllib.request.Request('http://127.0.0.1:8000/health/ready/', headers={'Host': 'clic.psi.ch', 'X-Forwarded-Proto': 'https'}); urllib.request.urlopen(r, timeout=5)"
|
||||
interval: 30s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
start_period: 30s
|
||||
start_period: 10m
|
||||
networks:
|
||||
- backend
|
||||
- clic_backend
|
||||
|
||||
clic-package-exports:
|
||||
image: ${CLIC_IMAGE:-gitea.psi.ch/images/clic:754f9f8}
|
||||
image: ${CLIC_IMAGE:-gitea.psi.ch/images/clic:ae59c15}
|
||||
container_name: clic-package-exports
|
||||
restart: always
|
||||
env_file:
|
||||
@@ -195,12 +204,17 @@ services:
|
||||
- CLIC_CACHE_BACKEND=redis
|
||||
- CLIC_REDIS_URL=redis://clic-redis:6379/0
|
||||
- CLIC_REQUIRE_SHARED_CACHE=1
|
||||
- INVENTORY_ARCHIVE_AUTO_RESTORE=0
|
||||
- INVENTORY_ARCHIVE_PUBLISH_MODE=off
|
||||
- INVENTORY_ARCHIVE_TOKEN=
|
||||
volumes:
|
||||
- /mount/webhosting_dmz_write/clic/media:/app/media
|
||||
- /mount/webhosting_dmz_write/clic/impact_factors:/app/data/impact_factors:ro
|
||||
entrypoint: ["python"]
|
||||
command: ["manage.py", "process_package_exports"]
|
||||
depends_on:
|
||||
clic-web:
|
||||
condition: service_healthy
|
||||
clic-db:
|
||||
condition: service_healthy
|
||||
clic-redis:
|
||||
@@ -209,7 +223,7 @@ services:
|
||||
- clic_backend
|
||||
|
||||
clic-brightway-json-exports:
|
||||
image: ${CLIC_IMAGE:-gitea.psi.ch/images/clic:754f9f8}
|
||||
image: ${CLIC_IMAGE:-gitea.psi.ch/images/clic:ae59c15}
|
||||
container_name: clic-brightway-json-exports
|
||||
restart: always
|
||||
env_file:
|
||||
@@ -221,6 +235,9 @@ services:
|
||||
- CLIC_CACHE_BACKEND=redis
|
||||
- CLIC_REDIS_URL=redis://clic-redis:6379/0
|
||||
- CLIC_REQUIRE_SHARED_CACHE=1
|
||||
- INVENTORY_ARCHIVE_AUTO_RESTORE=0
|
||||
- INVENTORY_ARCHIVE_PUBLISH_MODE=off
|
||||
- INVENTORY_ARCHIVE_TOKEN=
|
||||
volumes:
|
||||
- /mount/webhosting_dmz_write/clic/media:/app/media
|
||||
- /mount/webhosting_dmz_write/clic/impact_factors:/app/data/impact_factors:ro
|
||||
@@ -234,6 +251,8 @@ services:
|
||||
"${CLIC_API_EXPORT_POLL_SECONDS:-2}",
|
||||
]
|
||||
depends_on:
|
||||
clic-web:
|
||||
condition: service_healthy
|
||||
clic-db:
|
||||
condition: service_healthy
|
||||
clic-redis:
|
||||
@@ -241,12 +260,54 @@ services:
|
||||
networks:
|
||||
- clic_backend
|
||||
|
||||
clic-inventory-archive:
|
||||
image: ${CLIC_IMAGE:-gitea.psi.ch/images/clic:ae59c15}
|
||||
container_name: clic-inventory-archive
|
||||
restart: always
|
||||
env_file:
|
||||
- /mount/webhosting_dmz_write/clic/clic.env
|
||||
environment:
|
||||
- DJANGO_SETTINGS_MODULE=config.settings.production
|
||||
- POSTGRES_HOST=clic-db
|
||||
- POSTGRES_PORT=5432
|
||||
- CLIC_CACHE_BACKEND=redis
|
||||
- CLIC_REDIS_URL=redis://clic-redis:6379/0
|
||||
- CLIC_REQUIRE_SHARED_CACHE=1
|
||||
- IMPACT_SCORES_ENABLED=0
|
||||
- INVENTORY_ARCHIVE_ENVIRONMENT=production
|
||||
- INVENTORY_ARCHIVE_AUTO_RESTORE=0
|
||||
- INVENTORY_ARCHIVE_PUBLISH_MODE=scheduled
|
||||
- INVENTORY_ARCHIVE_TERMS_REVIEWED=1
|
||||
- INVENTORY_ARCHIVE_OWNER_ID=86122
|
||||
- INVENTORY_ARCHIVE_SERIES_ID=22850223
|
||||
- INVENTORY_ARCHIVE_BOOTSTRAP_RECORD_ID=
|
||||
- INVENTORY_ARCHIVE_BOOTSTRAP_SHA256=
|
||||
- INVENTORY_ARCHIVE_METADATA_FILE=/app/config/inventory-archive-metadata.json
|
||||
- INVENTORY_ARCHIVE_REDISTRIBUTION_FILE=
|
||||
- INVENTORY_ARCHIVE_ALERT_EMAIL=romain.sacchi@psi.ch
|
||||
entrypoint: ["python"]
|
||||
command: ["manage.py", "run_inventory_archive_worker"]
|
||||
depends_on:
|
||||
clic-web:
|
||||
condition: service_healthy
|
||||
healthcheck:
|
||||
test: ["CMD", "python", "manage.py", "inventory_archive_status", "--alert"]
|
||||
interval: 5m
|
||||
timeout: 60s
|
||||
retries: 1
|
||||
start_period: 10m
|
||||
stop_grace_period: 3m
|
||||
networks:
|
||||
- clic_backend
|
||||
|
||||
clic-db:
|
||||
image: postgres:16
|
||||
container_name: clic-db
|
||||
restart: always
|
||||
env_file:
|
||||
- /mount/webhosting_dmz_write/clic/clic.env
|
||||
environment:
|
||||
- INVENTORY_ARCHIVE_TOKEN=
|
||||
volumes:
|
||||
- /mount/webhosting_dmz_write/clic/postgres:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
|
||||
Reference in new issue
Block a user