mirror of
https://github.com/tiennm99/miti99bot.git
synced 2026-09-13 14:20:10 +00:00
Baking SOURCE_COMMIT as a Docker build arg never worked: Coolify exposes it as a runtime env var, not a build arg, so gitSHA was always empty and the owner DM was skipped. Read SOURCE_COMMIT from the container env at startup (falling back to the ldflags-baked gitSHA for local builds), forward it via the compose environment, and drop the dead build-arg baking.
48 lines
2.2 KiB
Bash
48 lines
2.2 KiB
Bash
# miti99bot — self-host (Coolify + MongoDB Atlas) environment.
|
|
# Copy to .env and fill in. .env is gitignored — never commit real secrets.
|
|
|
|
# ============================ Required ============================
|
|
# Telegram bot token from @BotFather.
|
|
TELEGRAM_BOT_TOKEN=123456:ABC-DEF...
|
|
|
|
# MongoDB Atlas connection. MONGO_URL is the full SRV string INCLUDING the
|
|
# db username + password — treat it as a secret (it is never logged).
|
|
# Create a least-privilege user: readWrite on this one database only.
|
|
MONGO_URL=mongodb+srv://botuser:STRONG_UNIQUE_PASSWORD@cluster0.xxxxx.mongodb.net/?retryWrites=true&w=majority
|
|
MONGO_DATABASE=miti99bot
|
|
|
|
# ============================ Operational =========================
|
|
# Comma-separated module list. Empty = load every module.
|
|
MODULES=
|
|
# Telegram user id for owner-only commands (renamed from BOT_OWNER_ID).
|
|
OWNER_ID=
|
|
# Comma-separated admin Telegram user ids (renamed from ADMIN_USER_IDS).
|
|
ADMIN_IDS=
|
|
|
|
# ============================ Optional ============================
|
|
# Only the twentyq module needs this. Leave blank to disable that command.
|
|
GEMINI_API_KEY=
|
|
|
|
# SOURCE_COMMIT is injected into the container at runtime by Coolify (a
|
|
# predefined env var holding the commit SHA); read at startup for the
|
|
# deploynotify owner DM. Leave unset for local `docker compose up` —
|
|
# deploynotify just stays silent.
|
|
# SOURCE_COMMIT=
|
|
|
|
# ====================== Leave UNSET on self-host ==================
|
|
# These are AWS-only. cmd/server reads secrets directly from the plain env
|
|
# vars above; *_PARAMETER_NAME would force an SSM lookup that FAILS with no AWS
|
|
# credentials and bricks startup. Do NOT set any of them:
|
|
# TELEGRAM_BOT_TOKEN_PARAMETER_NAME
|
|
# TELEGRAM_WEBHOOK_SECRET_PARAMETER_NAME
|
|
# GEMINI_API_KEY_PARAMETER_NAME
|
|
# STOCK_INCOME_EVENTS_API_TOKEN_PARAMETER_NAME
|
|
# GOLD_VNAPP_API_KEY_PARAMETER_NAME
|
|
#
|
|
# Also leave unset (defaults are correct for self-host):
|
|
# KV_PROVIDER — auto-selects mongodb because MONGO_URL is set
|
|
# PORT — defaults to 8080 (internal health server)
|
|
# TELEGRAM_WEBHOOK_SECRET — long polling has no webhook
|
|
# GOLD_VNAPP_API_KEY — gold module auto-fetches + caches the key to Mongo
|
|
# STOCK/COIN/GOLD *_API_URL overrides — modules use their coded default providers
|