Ответ
Основной опыт — это Docker и Docker Compose для оркестрации многоконтейнерных приложений в среде разработки и на staging. Работал с образами, сетями, томами и оптимизацией Dockerfile через многоступенчатые сборки для уменьшения итогового размера образа.
Пример многоступенчатого Dockerfile для Go-приложения:
# Этап сборки
FROM golang:1.21-alpine AS builder
WORKDIR /app
COPY go.mod go.sum ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 GOOS=linux go build -o /app/main ./cmd/app
# Финальный этап
FROM alpine:latest
RUN apk --no-cache add ca-certificates tzdata
WORKDIR /root/
COPY --from=builder /app/main .
EXPOSE 8080
CMD ["./main"]
Также имею опыт работы с Kubernetes в production: писал манифесты для Pod'ов, Deployments, StatefulSets, Services (включая LoadBalancer и Ingress), ConfigMaps и Secrets. Использовал Helm для управления релизами сложных приложений (например, мониторинг-стека Prometheus+Grafana). Настраивал HPA для автоматического масштабирования и Liveness/Readiness пробы.