Что такое Docker?

Junior
1.9k просмотров
AFK Offer AI

Docker — платформа контейнеризации. Упаковывает приложение со всеми зависимостями в изолированный контейнер, который одинаково работает на любой машине. Забудь про "у меня локально работает".

FROM golang:1.22-alpine AS builder
WORKDIR /app
COPY . .
RUN go build -o /bin/app ./cmd/server

FROM alpine:3.19 COPY --from=builder /bin/app /bin/app CMD ["/bin/app"]

Основные команды: docker build (собрать образ), docker run (запустить контейнер), docker push (загрузить в registry). Multi-stage build — стандарт для Go: первый этап компилирует, второй берёт только бинарник. Итоговый образ — 10-20 MB вместо 1 GB.

Следующий вопрос

Как обрабатывать ошибки в Go?