# ЭТАП 1: Сборка FROM golang:1.21-alpine AS builder # Устанавливаем рабочую директорию WORKDIR /app # Сначала копируем файлы зависимостей COPY go.mod ./ COPY go.sum* ./ RUN go mod tidy # Копируем ВЕСЬ проект (включая папку templates) COPY . . # Собираем бинарник RUN CGO_ENABLED=0 GOOS=linux go build -o /app-binary main.go # ЭТАП 2: Финальный образ FROM alpine:latest RUN apk --no-cache add ca-certificates tzdata WORKDIR /root/ # Копируем бинарник из корня (как указано в -o выше) COPY --from=builder /app-binary . # Копируем папку templates из рабочей директории сборщика (/app) # Обратите внимание: путь должен совпадать с WORKDIR первого этапа COPY --from=builder /app/template ./template EXPOSE 8080 CMD ["./app-binary"]