本地使用Docker搭建go开发环境的全过程(转)
原文:http://www.codebaoku.com/it-go/it-go-256120.html
1、获取镜像
- 确保运行了docker客户端
docker pull golang
#下载golang镜像
docker run -d --privileged=true golang
#构建镜像,运行容器
docker ps
#列出所有容器
docker exec -it 容器ID
#进入容器
2、配置
容器中
- 查看环境
go version
#查看go版本
go env
#查看当前go的环境变量的情况
- 设置go的env环境变量
go env -w GO111MODULE=on
#开启go mod
go env -w GOPROXY="https://goproxy.cn"
go env -w GOPATH="/gowww"
#如果本身就是,那就不需要再改了,可以省略
- 所有设置都完成,为了以后不重复进行设置
- 我们保存容器生成我们自己部署好的go环境镜像
docker commit 容器ID golang-local
#保存容器,生成新的镜像
docker images
#查看镜像
3、运行
docker stop 容器ID
#先关闭之前的golang容器
docker run -itd -p 8080:8080 -v /var/gowww:/gowww --name golang-loc golang-local
#构建新镜像,运行容器
#参数说明
-p:端口映射,将docker的端口映射到本机端口
-v:挂载容器卷,冒号前面是本机的地址,后面是容器内存放地址(均写绝对路径)
–name:容器别名
4、完成
- 工作目录:/var/gowww
- 新建项目:/var/gowww/gin-demo
- gin-demo 下创建 main.go
package main
import (
"fmt"
)
func main() {
fmt.Println("Hello, Go.")
}
- 到容器里查看下,对应的/go目录下是不是也存在相同的文件
- 验证go代码能不能跑起来
go run main.go