reproducible docker containers
Многие сегодня используют docker для доставки своих решений в продакшен. Обычно образы собираются с помощью т.н. Dockerfile
, который может иметь следующий вид:
FROM golang:latest as builder WORKDIR /go/src COPY . . RUN go build -o app FROM alpine:latest COPY --from=builder /go/src/app /bin/app CMD /bin/app
Можно ли сказать что образ, полученный в результате сборки с указанным Dockerfile
, будет воспроизводимым?
Нет. Эта заметка объясняет:
- почему
- как писать
Dockerfile
чтобы приблизиться к воспроизводимости - чем заменить
Dockerfile
чтобы сделать сборки воспроизводимыми