services: postgres: image: postgres:15 environment: POSTGRES_USER: "user" POSTGRES_PASSWORD: "password" POSTGRES_DB: "tgex" ports: - "5432:5432" volumes: - postgres_data:/var/lib/postgresql/data minio: image: minio/minio:latest command: server /data --console-address ":9001" environment: MINIO_ROOT_USER: "user" MINIO_ROOT_PASSWORD: "password" ports: - "9001:9001" # Web Console volumes: - minio_data:/data backend: build: context: . ports: - "8000:8000" depends_on: - postgres - minio environment: DB__URL: "postgres://user:password@postgres:5432/tgex" S3__ENDPOINT_URL: "http://minio:9000" PARSER__URL: "http://tg_parser:8080" GIT_COMMIT_COUNT: "${GIT_COMMIT_COUNT:-}" env_file: - .env restart: unless-stopped tg_bot: build: context: . dockerfile: tg_bot/Dockerfile depends_on: - backend environment: BACKEND__BASE_URL: "http://backend:8000" env_file: - .env restart: unless-stopped tg_parser: build: context: . dockerfile: tg_parser/Dockerfile depends_on: - postgres environment: DB__URL: "postgres://user:password@postgres:5432/tgex" LOGGER__LEVEL: "info" LOGGER__PRETTY_CONSOLE: "true" expose: - 8080 env_file: - .env volumes: - ./tg_parser.json:/data/tg_parser.json restart: unless-stopped volumes: postgres_data: minio_data: