version: "3.8" services: web: build: context: . target: base command: ./bin/run-prod.sh env_file: .env volumes: - ./:/app:delegated user: ${UID:-kitsune} stdin_open: true tty: true depends_on: - postgres - elasticsearch - kibana - redis - celery - mailcatcher ports: - "8000:8000" postgres: image: postgres:15.3 environment: - POSTGRES_PASSWORD=kitsune - POSTGRES_USER=kitsune - POSTGRES_DB=kitsune - LC_ALL=C.UTF-8 ports: - "5432:5432" volumes: - pgvolume:/var/lib/postgresql/data elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.10.2 environment: - discovery.type=single-node - LOG4J_FORMAT_MSG_NO_LOOKUPS=true ports: - "9200:9200" - "9300:9300" volumes: - ./kitsune/search/dictionaries/synonyms:/usr/share/elasticsearch/config/synonyms kibana: image: docker.elastic.co/kibana/kibana:7.10.2 ports: - 5601:5601 environment: ELASTICSEARCH_URL: http://elasticsearch:9200 ELASTICSEARCH_HOSTS: http://elasticsearch:9200 redis: image: redis:3 celery: build: context: . target: base command: celery -A kitsune worker -l info -n default@%h env_file: .env volumes: - ./:/app:delegated user: ${UID:-kitsune} depends_on: - postgres - redis mailcatcher: image: schickling/mailcatcher ports: - "1080:1080" volumes: pgvolume: