Back to questions
Senior
3
Расскажите про работу с Docker и Kubernetes: что приходилось делать?
Companies where asked
А7
Answer from AI
sobes.tech AI
В работе с Docker и Kubernetes в проектах на Go приходилось:
- Создавать Dockerfile для контейнеризации Go-приложений, оптимизируя размер образа (например, используя многоступенчатую сборку с
scratchилиalpine). - Настраивать docker-compose для локальной разработки и тестирования нескольких сервисов.
- Писать манифесты Kubernetes (Deployment, Service, ConfigMap, Secret) для развертывания приложений в кластере.
- Настраивать автоматическое масштабирование (Horizontal Pod Autoscaler) и обновления без простоя (Rolling Update).
- Использовать Helm для управления сложными конфигурациями и шаблонами развертывания.
- Отлаживать приложения в Kubernetes, используя
kubectl logs,kubectl execи port-forward.
Пример Dockerfile для Go-приложения:
FROM golang:1.20-alpine AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp
FROM alpine:latest
WORKDIR /app
COPY --from=builder /app/myapp .
CMD ["./myapp"]
Такой подход позволяет создавать легкие и переносимые образы для запуска в Kubernetes.