小编Ham*_*eed的帖子

需要帮助在 Go 工作区(多模块)模式下创建 Docker 容器

我需要帮助,我正在 go 工作区中工作,工作区中有多个使用通用功能的项目。因此,我所做的是制作一个单独的模块,其中包含其他模块使用的所有常用功能。

\n

当我们使用 go 工作区时,所有模块都可以共享它们的代码。

\n

文件结构如下:

\n
Workspace\n\xe2\x94\x82\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Project1\n\xe2\x94\x82      \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 main.go\n\xe2\x94\x82      \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 docker-compose.yml\n\xe2\x94\x82      \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Dockerfile\n\xe2\x94\x82      \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 go.mod\n\xe2\x94\x82\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Project2\n\xe2\x94\x82      \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 main.go\n\xe2\x94\x82      \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 docker-compose.yml\n\xe2\x94\x82      \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Dockerfile\n\xe2\x94\x82      \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 go.mod\n\xe2\x94\x82\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Common\n\xe2\x94\x82      \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 functionality.go\n\xe2\x94\x82      \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 go.mod\n\xe2\x94\x82\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 go.work\n
Run Code Online (Sandbox Code Playgroud)\n

common/functionality.goProject1 和 Project2通过将它们导入到项目中来使用其中的功能。

\n

当我运行docker-compose up -d命令时project1,它说您在项目中导入的公共模块不在 GOROOT 中。\n因为这里 docker 仅容器化目录中的文件Project1

\n

我怎样才能分别dockerizeProject1Project2???

\n

go multi-module docker docker-compose

7
推荐指数
1
解决办法
1423
查看次数

标签 统计

docker ×1

docker-compose ×1

go ×1

multi-module ×1