猿问

Docker-Compose golang - 没有可构建的源代码

我已经学习了几个教程,但无法弄清楚我做错了什么。我怀疑它是一个非常基本的原理,但是我说因为我对 GoLang 和 docker-compose 都不熟悉,所以我不能 100% 确定这是我的问题。


我正在运行 golang:build docker 镜像,它只检索几个 github 存储库。


任何帮助将非常感激。


错误如下:


+ exec go get -v -d

can't load package: package app: no buildable Go source files in /go/src/app

Service 'ddd' failed to build: The command '/bin/sh -c go-wrapper download' returned a non-zero code: 1

Docker-Compose 文件如下所示


ddd:

  build: ./goSvc

  working_dir: /go/src/

  command: go run main.go

  volumes:

    - ./goSvc/src/main.go:/go/src/main.go

    - ./goSvc/src/ddd:/go/src/ddd

  ports:

    - 8080:8080

  environment:

    - DB_NAME=rnse

    - DEBUG=true

Go项目结构


root

  goSvc

    pkg

    src

      ddd

        internal

          logic

        ...myGoFiles

      github.com

      main.go

    Dockerfile

编辑:包括 golang 的 docker 文件:


FROM golang:onbuild

RUN go get github.com/gorilla/mux

RUN go get github.com/lib/pq

EXPOSE 8080


慕田峪7331174
浏览 219回答 1
1回答

MM们

您使用的图像用于在构建初始图像时自动构建 Go 应用程序。看看它的Dockerfile。有ONBUILD COPY . /go/src/app说法。因此,您可以定位 Dockerfile 所在main.go的位置或使用没有ONBUILD触发器的图像,然后go run手动/使用docker-compose.
随时随地看视频慕课网APP

相关分类

Go
我要回答