Я знаю, что с этой проблемой сталкивались многие люди, но ни один из приведенных ответов не решил мою проблему.
Рабочий процесс
- Я запускаю все свои докеры в кластере kubernetes (облако Google).
- Я настроил compilation_trigger для автоматической сборки моего dockerfile, когда я фиксирую в своей мастер-ветке на github.
- Затем я обновляю свое развертывание kubernetes с помощью
kubectl set image deployment/MYPROJECT MYPROJECT=eu.gcr.io/foo/MYPROJECT:$TRAVIS_COMMIT
Что не так?
Мой модуль остается в crashloop back-off
и в журналах, которые я читаю: standard_init_linux.go:178: exec user process caused "exec format error"
Немного контекста
Мой рабочий процессработал до начала июня 2018 года, я не понимаю, в чём дело, поэтому я искал в интернете, изменил мой dockerfile, обновил мои зависимости, изменил версию базового образа dockerfile и т. д ... Ничего не работает
Dockerfile
FROM golang:1.10-alpine3.7 AS builder
ADD . /go/src/github.com/foo/MYPROJECT
WORKDIR /go/src/github.com/foo/MYPROJECT/api
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "-s -w" -a -installsuffix cgo -o /go/bin/api
FROM alpine:3.7
RUN apk --no-cache add ca-certificates
COPY --from=builder /go/bin/api /go/bin/api
COPY --from=builder /go/src/github.com/foo/MYPROJECT/api/sql /go/migrations/sql
COPY --from=builder /go/src/github.com/foo/MYPROJECT/api/.docs/swagger.yml /static/swagger.yml
RUN chmod +x /go/bin/api
ENTRYPOINT ["/go/bin/api"]
[РЕДАКТИРОВАТЬ: 12 июня]
Я заметил, что размер образа докера изменился с 6.3 Mo
до 2.3 Mo
, когда возникла проблема.Я подозреваю, что обновление от Alpine, я продолжаю исследовать.