version: "3" volumes: pg_data: solr_data: ckan_storage: services: nginx: container_name: nginx build: context: nginx/ dockerfile: Dockerfile links: - ckan ports: - "0.0.0.0:80:80" ckan: container_name: ckan build: context: ckan/ dockerfile: Dockerfile args: - TZ=${TZ} env_file: - .env links: - db - solr - redis - datapusher ports: - "0.0.0.0:${CKAN_PORT}:5000" volumes: - ckan_storage:/var/lib/ckan db: container_name: db build: context: . dockerfile: postgresql/Dockerfile args: - DATASTORE_READONLY_PASSWORD=${DATASTORE_READONLY_PASSWORD} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} environment: - DATASTORE_READONLY_PASSWORD=${DATASTORE_READONLY_PASSWORD} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - PGDATA=/var/lib/postgresql/data/db volumes: - pg_data:/var/lib/postgresql/data healthcheck: test: ["CMD", "pg_isready", "-U", "ckan"] datapusher: container_name: datapusher build: context: datapusher ports: - "8800:8800" environment: - DATAPUSHER_REWRITE_RESOURCES=${DATAPUSHER_REWRITE_RESOURCES} - DATAPUSHER_REWRITE_URL=${DATAPUSHER_REWRITE_URL} - CKAN__DATAPUSHER__CALLBACK_URL_BASE=${CKAN__DATAPUSHER__CALLBACK_URL_BASE} solr: container_name: solr build: context: . dockerfile: solr/Dockerfile args: - SOLR_VERSION=${SOLR_VERSION} - CKAN_VERSION=${CKAN_VERSION} volumes: - solr_data:/opt/solr/server/solr/ckan/data redis: container_name: redis image: redis:${REDIS_VERSION}