services: db: image: postgres:16.0 env_file: .env environment: - "POSTGRES_HOST_AUTH_METHOD=trust" networks: - backend volumes: - postgres_data:/var/lib/postgresql/data/ ports: - "$PGPORT:5432" redis: image: "redis:alpine" ports: - "6379:6379" networks: - backend volumes: - redis_data:/data web: build: context: . dockerfile: docker/Dockerfile args: LOCAL_DEVELOPMENT: "true" command: [ "/bin/bash", "/code/docker/compose-start.sh" ] depends_on: - db - redis environment: - "LOCAL_DEVELOPMENT=true" - "DOCKER_DIR=/code/docker" - "PYTHON=python" - "WEB_PORT=8000" env_file: - .env init: true networks: - backend - frontend ports: - "8000:8000" volumes: - .:/code - ../website2022/:/website stop_signal: SIGKILL # mailman-core: # image: maxking/mailman-core # stop_grace_period: 5s # ports: # - "8001:8001" # API # - "8024:8024" # LMTP - incoming emails # volumes: # - ./mailman/core:/opt/mailman/ # networks: # - backend # env_file: # - .env # depends_on: # - db # mailman-web: # image: maxking/mailman-web # entrypoint: /opt/mailman-docker/compose-start.sh # env_file: # - .env # environment: # - "DOCKER_DIR=/opt/mailman-docker" # - "PYTHON=python3" # - "WEB_PORT=8008" # depends_on: # - redis # - db # stop_signal: SIGKILL # ports: # - "8008:8008" # HTTP # - "8080:8080" # uwsgi # volumes: # - .:/code # - ./mailman/web:/opt/mailman-web-data # - ./docker:/opt/mailman-docker # networks: # - backend celery-worker: build: context: . dockerfile: docker/Dockerfile args: LOCAL_DEVELOPMENT: "true" command: - /bin/bash - -c - | /code/docker/wait-for-it.sh -h web -p 8000 -t 20 -- celery -A config worker --concurrency=10 -P gevent --loglevel=debug networks: - backend environment: LOCAL_DEVELOPMENT: "true" DEBUG_TOOLBAR: "false" env_file: - .env depends_on: - db - redis volumes: - .:/code celery-beat: build: context: . dockerfile: docker/Dockerfile args: LOCAL_DEVELOPMENT: "true" command: [ "celery", "-A", "config", "beat", "--loglevel=debug" ] environment: LOCAL_DEVELOPMENT: "true" DEBUG_TOOLBAR: "false" env_file: - .env depends_on: - db - redis networks: - backend volumes: - .:/code stop_signal: SIGKILL maildev: image: maildev/maildev init: true ports: - "1025:1025" - "1080:1080" networks: - backend stop_signal: SIGKILL networks: backend: frontend: volumes: postgres_data: redis_data: