# ===== Production compose ===== # Build an immutable image from Git-controlled source and run it. # docker compose up -d --build # # The bot attaches to the existing DSM `mem0_net` (external) so it can reach # mem0-postgres and LiteLLM by container name, and to `bridge_hoelee` so the # CF tunnel / traefik-update-alist can route bot.digikedai.com to it. # Host port 5247 (5244-5246 taken by the alist stack; 8080 taken by DSM nginx). services: telegram-bot: build: context: . target: production container_name: digikedai-bot restart: unless-stopped environment: NODE_ENV: production PORT: "8080" APP_ENV: ${APP_ENV} LOG_LEVEL: ${LOG_LEVEL} BOT_TOKEN: ${BOT_TOKEN} BOT_USERNAME: ${BOT_USERNAME} TELEGRAM_WEBHOOK_URL: ${TELEGRAM_WEBHOOK_URL} TELEGRAM_WEBHOOK_SECRET: ${TELEGRAM_WEBHOOK_SECRET} LLM_BASE_URL: ${LLM_BASE_URL} LLM_API_KEY: ${LLM_API_KEY} LLM_MODEL: ${LLM_MODEL} POSTGRES_HOST: ${POSTGRES_HOST} POSTGRES_PORT: ${POSTGRES_PORT} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: ${POSTGRES_DB} BOT_DB_NAME: ${BOT_DB_NAME} N8N_BASE_URL: ${N8N_BASE_URL} NOCODB_BASE_URL: ${NOCODB_BASE_URL} NOCODB_TOKEN: ${NOCODB_TOKEN} NOCODB_BASE_ID: ${NOCODB_BASE_ID} TRIAL_DAYS_DEFAULT: ${TRIAL_DAYS_DEFAULT} WA_WEBHOOK_SECRET: ${WA_WEBHOOK_SECRET} ports: - "5247:8080" networks: - mem0_net - bridge_hoelee networks: mem0_net: external: true bridge_hoelee: external: true