services: db: image: pgvector/pgvector:pg17 restart: always container_name: postgres-vector environment: POSTGRES_DB: "${POSTGRES_DB:-telegram_dify_bot}" POSTGRES_USER: "${POSTGRES_USER:-postgres}" POSTGRES_PASSWORD: "${POSTGRES_PASSWORD:-WdA25SmrLmFkGPcg}" PGDATA: /var/lib/postgresql/data/pgdata TZ: Asia/Shanghai volumes: - "./volumes/postgres_data:/var/lib/postgresql/data" - "./volumes/postgres/logs:/var/log/postgresql" healthcheck: test: [ "CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-postgres} -d ${POSTGRES_DB:-telegram_dify_bot}" ] interval: 10s timeout: 5s retries: 5 start_period: 10s networks: - app-network security_opt: - no-new-privileges:true telegram-dify-bot: image: ghcr.io/qin2dim/telegram-dify-bot:latest restart: always container_name: telegram-dify-bot env_file: - .env volumes: - "./volumes/telegram-bot/logs:/app/app/logs" - "./volumes/telegram-bot/data:/app/app/data" environment: DATABASE_URL: "${DATABASE_URL:-postgresql://postgres:WdA25SmrLmFkGPcg@db:5432/telegram_dify_bot}" TELEGRAM_BOT_API_URL: "${TELEGRAM_BOT_API_URL:-http://nginx:80}" command: uv run app/main.py depends_on: db: condition: service_healthy nginx: condition: service_started networks: - app-network telegram-bot-triggers: image: ghcr.io/qin2dim/telegram-dify-bot:latest restart: always container_name: telegram-bot-triggers env_file: - .env volumes: - "./volumes/telegram-bot-triggers/logs:/app/app/logs" environment: DATABASE_URL: "${DATABASE_URL:-postgresql://postgres:WdA25SmrLmFkGPcg@db:5432/telegram_dify_bot}" command: uv run app/deploy.py depends_on: db: condition: service_healthy networks: - app-network url-context: image: ech0sec/test123:latest restart: always container_name: url-context ports: - "30030:30030" volumes: - "./volumes/url-context/caches:/app/app/.cache" - "./volumes/url-context/logs:/app/app/logs" environment: SERVER_HOST: "${SERVER_HOST:-}" TZ: Asia/Shanghai http_proxy: https_proxy: all_proxy: entrypoint: [ "/usr/bin/tini", "--" ] command: xvfb-run --auto-servernum --server-num=1 --server-args='-screen 0, 1920x1080x24' uv run app/main.py networks: - app-network xhs-downloader: image: ghcr.io/joeanamier/xhs-downloader:2.6-dev restart: always container_name: xhs-downloader networks: - app-network ports: - "15556:5556" volumes: - "./volumes/xhs_downloader:/app/Volume" command: python main.py api # https://github.com/aiogram/telegram-bot-api/blob/master/docker-entrypoint.sh#L100 telegram-bot-api: image: aiogram/telegram-bot-api:latest container_name: telegram-bot-api restart: unless-stopped volumes: - "./volumes/telegram-bot-api-data:/var/lib/telegram-bot-api" environment: TELEGRAM_API_ID: ${TELEGRAM_API_ID} TELEGRAM_API_HASH: ${TELEGRAM_API_HASH} TELEGRAM_LOCAL: 1 TELEGRAM_WORK_DIR: /var/lib/telegram-bot-api TELEGRAM_HTTP_PORT: 8081 TELEGRAM_LOG_FILE: /var/lib/telegram-bot-api/telegram-bot-api.log networks: - app-network # ports: # - "8081:8081" nginx: image: nginx:1.29.0-alpine restart: unless-stopped depends_on: - telegram-bot-api volumes: - "./volumes/telegram-bot-api-data:/var/lib/telegram-bot-api" - "./nginx:/etc/nginx/conf.d/" networks: - app-network # ports: # - "8082:80" networks: app-network: driver: bridge name: telegram-bot-network