docker-ckan/docker-compose.yml

161 lines
3.3 KiB
YAML
Raw Normal View History

version: "3"
2015-04-16 02:41:10 +02:00
2023-07-31 13:14:50 +02:00
2022-07-12 10:44:55 +02:00
volumes:
ckan_storage:
pg_data:
solr_data:
services:
nginx:
container_name: ${NGINX_CONTAINER_NAME}
build:
context: nginx/
dockerfile: Dockerfile
env_file:
- .env
2023-04-17 09:49:40 +02:00
logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "10"
networks:
2023-06-10 08:11:18 +02:00
- webnet
- ckannet
2022-07-14 11:40:02 +02:00
depends_on:
ckan:
condition: service_healthy
ports:
- "0.0.0.0:${NGINX_SSLPORT_HOST}:${NGINX_SSLPORT}"
2022-07-12 16:04:31 +02:00
ckan:
container_name: ${CKAN_CONTAINER_NAME}
build:
context: ckan/
dockerfile: Dockerfile
2022-07-12 16:04:31 +02:00
args:
- TZ=${TZ}
networks:
2023-06-10 08:11:18 +02:00
- ckannet
- dbnet
- solrnet
- redisnet
2022-07-13 12:47:48 +02:00
env_file:
- .env
2023-04-17 09:49:40 +02:00
logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "10"
2022-07-12 16:04:31 +02:00
depends_on:
db:
condition: service_healthy
solr:
condition: service_healthy
redis:
condition: service_healthy
volumes:
- ckan_storage:/var/lib/ckan
restart: unless-stopped
healthcheck:
test: ["CMD", "wget", "-qO", "/dev/null", "http://localhost:${CKAN_PORT}"]
pycsw:
container_name: ${PYCSW_CONTAINER_NAME}
build:
context: ckan-pycsw/
dockerfile: Dockerfile
env_file:
- .env
2023-04-17 09:49:40 +02:00
logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "10"
networks:
- webnet
2023-06-10 08:11:18 +02:00
- ckannet
depends_on:
ckan:
condition: service_healthy
ports:
- "0.0.0.0:${PYCSW_PORT_HOST}:${PYCSW_PORT}"
volumes:
- ./log:${APP_DIR}/log
- ./metadata:${APP_DIR}/metadata
restart: on-failure:3
healthcheck:
test: ["CMD", "wget", "-qO", "/dev/null", "http://localhost:${PYCSW_PORT}"]
2022-07-12 10:44:55 +02:00
db:
container_name: ${POSTGRESQL_CONTAINER_NAME}
build:
context: postgresql/
networks:
2023-06-10 08:11:18 +02:00
- dbnet
2022-07-12 10:44:55 +02:00
environment:
2023-06-13 14:24:18 +02:00
- POSTGRES_USER
- POSTGRES_PASSWORD
- POSTGRES_DB
- CKAN_DB_USER
- CKAN_DB_PASSWORD
- CKAN_DB
- DATASTORE_READONLY_USER
- DATASTORE_READONLY_PASSWORD
- DATASTORE_DB
2022-07-12 10:44:55 +02:00
volumes:
- pg_data:/var/lib/postgresql/data
2023-04-17 09:49:40 +02:00
logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "10"
2022-07-12 10:44:55 +02:00
restart: unless-stopped
healthcheck:
2023-06-10 08:11:18 +02:00
test: ["CMD", "pg_isready", "-U", "${POSTGRES_USER}", "-d", "${POSTGRES_DB}"]
2021-10-29 17:05:48 +02:00
2022-07-12 10:44:55 +02:00
solr:
container_name: ${SOLR_CONTAINER_NAME}
build:
context: solr/
dockerfile: Dockerfile.spatial
networks:
2023-06-10 08:11:18 +02:00
- solrnet
2022-07-12 10:44:55 +02:00
image: ckan/ckan-solr:${SOLR_IMAGE_VERSION}
env_file:
- .env
2023-04-17 09:49:40 +02:00
logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "10"
2023-01-19 13:34:17 +01:00
volumes:
- solr_data:/var/solr
2022-07-12 10:44:55 +02:00
restart: unless-stopped
healthcheck:
test: ["CMD", "wget", "-qO", "/dev/null", "http://localhost:${SOLR_PORT}/solr/"]
2015-04-16 02:41:10 +02:00
redis:
2022-07-12 10:44:55 +02:00
container_name: ${REDIS_CONTAINER_NAME}
2021-12-10 14:35:25 +01:00
image: redis:${REDIS_VERSION}
2023-04-17 09:49:40 +02:00
logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "10"
2023-06-10 08:11:18 +02:00
networks:
- redisnet
2022-07-12 10:44:55 +02:00
restart: unless-stopped
healthcheck:
test: ["CMD", "redis-cli", "-e", "QUIT"]
networks:
2023-06-10 08:11:18 +02:00
webnet:
ckannet:
solrnet:
2023-06-13 14:24:18 +02:00
internal: true
2023-06-10 08:11:18 +02:00
dbnet:
2023-06-13 14:24:18 +02:00
internal: true
2023-06-10 08:11:18 +02:00
redisnet:
2023-06-13 14:24:18 +02:00
internal: true