SpamAuthBot/Dockerfile
xeon 6e9e0bd1ad Add Dockerfile for Coolify deploy
Multi-stage Go build; BOT_TOKEN via environment, not image.
2026-08-21 21:06:06 +00:00

29 lines
906 B
Docker
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# === Этап 1: сборка ===
# Берём образ с компилятором Go, собираем бинарник.
FROM golang:1.26-alpine AS build
WORKDIR /src
# Сначала зависимости (кэш Docker не пересобирает их без изменений go.mod)
COPY go.mod go.sum ./
RUN go mod download
# Потом код
COPY . .
# Статичный бинарник без CGO — удобно класть в маленький alpine
RUN CGO_ENABLED=0 GOOS=linux go build -o /out/bot .
# === Этап 2: запуск ===
# Лёгкий образ только с бинарником (без компилятора).
FROM alpine:3.22
RUN apk add --no-cache ca-certificates tzdata
WORKDIR /app
COPY --from=build /out/bot /app/bot
# Токен НЕ кладём в образ — Coolify передаст BOT_TOKEN как env
ENV BOT_TOKEN=
CMD ["/app/bot"]