Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Для golang чаще всего можно делать from scratch (пустой image), alpine — лишнее. А сертификаты монтировать с хоста — проще их обновлять.
WORKDIR /go/src/app
COPY . .
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .
FROM scratch
COPY --from=0 /go/src/app/app .
CMD ["./app"]docker run -v /etc/ssl/certs:/etc/ssl/certs:ro
или вроде того
https://golang.org/src/crypto/x509/root_linux.go
доеду на работу — могу глянуть.
UPD
Из манифеста куба.
volumeMounts:
- name: certs
mountPath: /etc/ssl/certs
volumes:
- name: certs
hostPath:
path: /etc/ssl/certsUPD2
Так же если использовать nomad вместо с golang микросервисами… то даже докер не нужен, он умеет скачивать архив в бинарем и запукать в chroot. Плюс там рядом consul для go-micro.
Я так понимаю, это перевод? А в мобильной версии не виден источник? Или он не указан в статье? Или это не прямой перевод?
Построение микросервисной архитектуры на Golang и gRPC, часть 2 (docker)