我正尝试在docker compose的帮助下部署Golang应用程序。

在CentOS服务器中,文件夹的层次结构为:

此Golang应用程序使用了多个第三方库:

  • 大猩猩Mux;

  • 大猩猩处理器;

  • pq;

  • godotenv;

  • GORM;

  • goracle。

docker -compose.yml:

当我尝试运行docker-compose up项目时,它会引发错误:

如您所见,我需要设置第三方库。如何正确制作?还有如何在docker compose的帮助下设置未来的docker映像和容器的名称?

是否可以在Windows 10上创建go.mod文件?

当我运行时Powershell中的$Env:GOOS ="linux"; $Env:GOARCH ="amd64"; go build命令会引发错误:

enter image description here


Is it possible to create go.mod file on Windows 10?

是的,只要您拥有Go 1.11 / 1.12

,但是要将其与docker-compose一起使用,您可以在Go Docker开发环境中使用Go Modules并进行实时运行从Mi?oszSmó?ka

重新加载代码\\\\",他使用一个Dockerfile进行编译:

然后是一个docker-compose来执行,挂载已编译的可执行文件,*和Go模块缓存:

关于go-goracle/goracle的交叉编译问题,问题59详细信息:

goracle needs CGO to compile in the Oracle OCI libs.
So either a cross-compiling C toolchain is required (and special env vars set
accordingly), or a native env (that's easier, IMHO).

含义:不要尝试交叉编译它从Windows中直接使用正确的操作系统(通过Linux VM,在Windows 10 HyperV环境中就是这样)在Dockerfile中执行此操作。