我在 Ubuntu 16.04 上安裝了 Go。這是我的 GOPATH=/home/{username}/work。我在 /home/{username}/work/src 中創建了一個項目。這是我的項目文件夾層次結構。project-name services configuration api main.go Dockerfile bff api main.go Dockerfile docker-compose.yml favicon.ico README.md我可以使用我的 dockerfile 構建和運行,但我無法使用 docker-compose 構建和運行。我找不到任何解決方案。配置服務dockerfile:FROM golang:1.11.1-alpine3.8 as builderRUN apk update && apk add git && go get gopkg.in/natefinch/lumberjack.v2RUN mkdir -p /go/src/project-name/services/configurationRUN CGO_ENABLED=0RUN GOOS=linuxADD . /go/src/project-name/services/configurationENV GOPATH /goWORKDIR /go/src/project-name/services/configuration/apiRUN go getRUN go buildFROM alpineRUN apk updateRUN apk add curlRUN mkdir -p /appCOPY --from=builder /go/src/project-name/services/configuration/api/ /app/RUN chmod +x /app/apiWORKDIR /appEXPOSE 5001ENTRYPOINT ["/app/api"]它適用于 dockerfile。這是我的 docker-compose 文件:version: '3.4'services: bff: image: project-name/bff:${TAG:-latest} build: context: . dockerfile: services/bff/Dockerfile ports: - "5000:5000" container_name: bff depends_on: - configuration configuration: image: project-name/configuration:${TAG:-latest} build: context: . dockerfile: services/configuration/Dockerfile ports: - "5001:5001" container_name: configuration它沒有用。運行“run go get”命令時,報錯,報錯為: can't load package: package project-name/services/configuration/api: no Go files in /go/src/project-name/services/configuration/api ERROR: Service 'configuration' failed to build: The command '/bin/sh -c go get' returned a non-zero code: 1
當我使用 go with docker compose 時出現“No Go files in...”
慕田峪9158850
2023-05-22 17:17:38