如何从docker容器配置go sdk和GOPATH?

时间:2017-07-23 15:56:07

标签: docker go docker-compose goland gopath

我试图用Jetbrains Gogland和docker compose配置golang项目。我想使用GOPATH并从docker容器中取出。我的意思是使用容器中的go安装来进行自动完成等,而无需在本地机器上安装golang。 项目结构是:

project root
    docker-compose.yml
    back|
         Dockerfile
         main.go
         some other packages
    front|
         all the front files...

之后,我想将back文件夹部署到docker容器中的/go/src/app。问题是,当我开发项目时,我不能使用自动完成功能,因为这个项目不在我的本地GOPATH中,并且在docker容器和我的本地机器上有不同的golang版本 我已经阅读了this个问题,但我仍然无法解决我的问题。

1 个答案:

答案 0 :(得分:1)

目前这是不可能的。我也不知道将来怎么可能。在docker中安装卷意味着您从容器中“隐藏”该文件夹的内容,并使用主机上的文件。因此,只要您从计算机挂载目录,该计算机的容器文件将无法供计算机使用。这意味着您无法在容器中安装Go,然后安装文件夹并将该位置用于Go源。如果你在想:我只是把东西挂在另一个地方,做一些符号链接魔法/复制文件,这只是一个不好的想法导致无处。

Gogland支持几周前发布的EAP 10的远程调试。这允许您调试在容器或远程主机上运行的应用程序。因此,您可以在计算机上安装Go和源代码,但让它们在容器中运行。