From a288e52eeb35ddd111e8d877614b6946cbe9f357 Mon Sep 17 00:00:00 2001 From: Vladimir Zagainov Date: Sat, 14 Jun 2025 20:19:40 +0300 Subject: [PATCH] feat: update ping-helper submodule to initial version --- Dockerfile | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/Dockerfile b/Dockerfile index e69de29..eadf4d9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -0,0 +1,35 @@ +# --- Этап 1: Сборка (Builder) --- +FROM golang:1.22-alpine AS builder + +WORKDIR /app + +# Копируем файлы go.mod и go.sum для загрузки зависимостей +COPY go.mod go.sum ./ +RUN go mod download + +# Копируем весь остальной исходный код +COPY . . + +# Собираем приложение. На этот раз точка входа - корень проекта. +RUN CGO_ENABLED=0 GOOS=linux go build -o /app/ping-helper -ldflags="-w -s" . + +# --- Этап 2: Финальный образ (Final) --- +FROM alpine:latest + +WORKDIR /app + +# Копируем только скомпилированный бинарник из этапа сборки +COPY --from=builder /app/ping-helper . + +# Добавляем сертификаты +RUN apk --no-cache add ca-certificates + +# Запускаем от имени непривилегированного пользователя +RUN addgroup -S appgroup && adduser -S appuser -G appgroup +USER appuser + +# Указываем, что контейнер будет слушать порт 8081 +EXPOSE 8081 + +# Команда для запуска нашего приложения +ENTRYPOINT ["/app/ping-helper"]