如何使用docker部署golang项目【熟饭简洁版】
教程环境:服务器为ubuntu(22.04),开发系统为windows 11
第一步,服务器下载docker
sudo apt install docker.io //如果你已经安装过,可以忽略,或卸载后继续安装,这里不赘述
第二步,检查安装结果
docker version //检查安装的docker版本,如果有输出版本,则表示安装成功
不需要的步骤删除了,3-5
第六步,编写docker配置文件~~
FROM golang:alpine
# 为我们的镜像设置必要的环境变量
ENV GO111MODULE=on \
GOPROXY=https://goproxy.cn,direct \
CGO_ENABLED=0 \
GOOS=linux \
GOARCH=amd64
# 移动到工作目录:/build
WORKDIR /build
# 将代码复制到容器中
COPY . .
# 将我们的代码编译成二进制可执行文件app
RUN go build -o app .
# 移动到用于存放生成的二进制文件的 /dist 目录
WORKDIR /dist
# 将二进制文件从 /build 目录复制到这里
RUN cp /build/app .
# 声明服务端口
EXPOSE 8888
# 启动容器时运行的命令
CMD ["/dist/app"]
第七步,上传代码至git,或者gitee
第八步,ubuntu上安装git
sudo apt-get update //更新源
sudo apt-get install git //安装git
git --version //查看安装版本
git config --global user.name "****" //设置用户名
git config --global user.email "****@xxx.com" //设置邮箱
第九步,在git或者gitee上添加ssh公钥
ssh-keygen -t rsa -C "****@xxx.com //生成ssh公钥
生成 ssh的公钥后,添加到git或者ssh
第十步,拉取代码
git clone git@gitee.com:xxx/golang-docker.git /home/golang/golangdocker
第十一步,生成docker镜像
docker build . -t goweb_app
这就表示生成成功了
Successfully built c08bfb6c52ba
Successfully tagged goweb_app:latest
第十二步,运行镜像
docker run -p 8888:8888 goweb_app
第十三步,浏览器检查是否运行成功
因为我是虚拟机,是桌面版的,我运行: 127.0.0.1:8888
浏览器输出了我的代码结果,表示运行成功