Docker部署golang项目

前言:最近开发了钉钉机器人的第二版,第二版主要开发的是企业内部机器人,只有企业内的成员才可以使用。 不同于第一版,是自定义机器人,所有人可能使用。企业内部机器人的权限比自定义机器人的权限要多很多,所以功能也会多很多,后续的开发肯定是基于企业内部机器人的开发。

想着把企业内部机器人和自定义分开,分别部署,于是有了这篇文章

部署思路:dockerfile文件构造docker镜像,docker镜像构造容器,容器和阿里云服务器挂载,容器内部安装git,拉去Coding代码,然后采取端口映射方式部署。

具体过程:

一:Dockerfile文件,直接找的另外一位同学的,知识的力量在于传承,有时需要站在巨人的肩膀上面开发。

FROM centos:7.9.2009
FROM centos:7.9.2009
ENV MYPATH /usr/local/goproject
WORKDIR  $MYPATH
RUN yum -y update \
&& yum -y install vim \
&& yum -y install git \
&& yum install -y gcc-c++ \
&& yum -y install wget \
&& wget -P /root/ https://studygolang.com/dl/golang/go1.17.11.linux-amd64.tar.gz \
&& tar -zxvf /root/go1.17.11.linux-amd64.tar.gz -C /usr/local \
&& echo export PATH=$PATH:/usr/local/go/bin >> /etc/profile \
&& source /etc/profile && go version \
&& echo "source /etc/profile" >> /root/.bashrc \
&& go env -w GOPROXY=https://goproxy.cn,direct \
&& go env -w GO111MODULE=on \
————————————————
版权声明:本文为CSDN博主「向神明诉语、」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_52973251/article/details/125596069

二:通过dockerfile构建镜像想要构建镜像,我们得把dockerfile文件拿到服务器里面,Goland提交代码到Coding中,然后打开服务器,进入我们放项目的地方 。

 然后把Coding代码克隆下来

 如果需要输入账号密码的话,需要输入Coding登录的账号密码,切记不要输错,输错的需要百度解决。

Dockerfile文件已经进入到了服务器,我们在Dockerfile所在的目录下运行dockerfile

 生成容器命令如下

docker build -f Dockerfile文件名 -t 镜像名 .

之后静待成功即可,如果这一步出了问题,可以参考作者原文docker后端部署流程及遇到的问题_向神明诉语、的博客-CSDN博客_docker后端部署

三 :启动容器,和服务器挂载

docker run -it -v /usr/local/goproject:/usr/local/goproject -v /etc/localtime:/etc/localtime -p 8888:8888 --cap-add SYS_TIME --name ding_2.0 ding_centos /bin/bash

运行后结果如下即代表成功

 进入容器

docker exec -it  ding_2.0 /bin/bash

然后找到main.go所在的目录下面,编译main.go文件

go build -o ding main.go 

当编译完成之后,我们就可以看到我们的目录下面有一个绿色的ding文件,这个文件就是可以直接运行的二进制文件

现在我们来运行这个文件


 

nohup /usr/local/goproject/ding_server_2.0/ding> start.log 2>&1 &

 查看一下日志文件

cat start.log

然后我们访问服务器的8888端口即可访问成功,记得开放阿里云安全组8888端口。

我们可以在容器里面安装git,然后后面直接在容器里面拉代码即可

yum install git

 成功

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值