на билде, что надо обновить
Не в докерфайл же вставлять команду... Раньше работало. Не знаете, куда копать?
(И одновременно жалуется, failed to solve rpc code unknown desc)
Но если вставить все же в докер файл, то хоть и идёт жуткая подгрузка всего, оно работает...
Покажите докерфайл
А как жалуется? Какая ошибка?
https://github.com/CookieNyanCloud/backend-test/blob/master/Dockerfile
А что такого если вставить в докерфайл go mod tidy?)
именно в нем приложение и должно собираться
Раньше без него работало, а тут что-то новое подгрузил и все
=> ERROR [5/5] RUN go build -o backend-test ./cmd/main.go 0.5s ------ > [5/5] RUN go build -o backend-test ./cmd/main.go: #10 0.402 go: updates to go.mod needed; to update it: #10 0.402 go mod tidy ------ failed to solve: rpc error: code = Unknown desc = executor failed running [/bin/sh -c go build -o ba ckend-test ./cmd/main.go]: exit code: 1 make: *** [Makefile:4: up] Error 17
я для небольших проектов предпочитаю использовать go mod vendor. Все выкачивать заранее, пробрасывать в контейнер. И еще билдить в одном контейнере, а использовать в другом, будет совсем красиво. Поправьте кто-нибудь, если лажа)) FROM golang:1.17.5-alpine3.15 AS builder COPY . /go/src/github.com/account/app WORKDIR /go/src/github.com/account/app RUN go mod verify && CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o build/app github.com/account/app/cmd/ FROM alpine:3.15.0 RUN apk --no-cache add ca-certificates WORKDIR /root/ COPY --from=builder /go/src/github.com/account/app/build/app ./ EXPOSE 8080 8080 CMD ["./app"]
Я предпочитаю сначала копировать только go.mod, go.sum, скачивать зависимости, и только потом копировать код. Тогда не приходится ждать установки зависимостей, когда меняешь только код пример
Альпина это нормально, контейнер будет не жирный.
Юзера не создаёте, в контейнере, это не хорошо.
голанг - один бинарь, если юзать нормально мультистейдж, разница между альпайном и слимом будет метров 20 - сильно так сэкономится? А если в образе дофига софта, то опять же разница будет не столь заметная
Не 20, нужно смотреть.
вы не забывайте, что на воркер ваш образ тоже должен скачаться… и не всегда там туда поедет дельта
2.69 MB vs 30.41 MB
А покажите этот докер, проверю.
https://hub.docker.com/_/debian?tab=tags&page=1&name=slim
Я правильный образ скачал? $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE <none> <none> a05c84f82560 8 seconds ago 73.2MB debian stretch-slim 4b673a9c386b 2 weeks ago 55.3MB Первое это простенькая приложуха.
Обсуждают сегодня