go应用 docker 部署

0 篇文章 0 订阅

一、服务器docker开启远程访问

vi /usr/lib/systemd/system/docker.service

在ExecStart这一行后添加 

-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

,如下图

重启docker

systemctl daemon-reload
systemctl restart docker

确保服务器安全组开放2375端口
注意:直接开放2375端口意味着其他任何人也可以直接操作服务器,这里仅做测试用,正式服务器要加秘钥验证

二、安装Docker插件&配置Docker服务器

1.打开File -> Settings -> Plugins 安装Docker插件

连接成功后会在IDE左下角出现Docker窗口,点击左侧绿色Connect后可以直接连接服务器,并且可以查看服务器上的镜像和容器等。

三、创建项目和配置

1.项目  说明 依赖go mod 编译模式

2.创建一个基于golang的Dockerfile文件,放在根目录下

四、配置交叉编译

环境变量改为CGO_ENABLED=0;GOARCH=amd64;GOOS=linux,参数改为-o ./go_mysql如下图

五、配置Docker编译

下面是Run Option的一些参数,可以自行增减docker run配置

--restart=always --env GO_ENV=prod --env GO_APP_PORT=8080--expose 8080-d -p 8080:8080

五、发布Docker

直接点运行按钮就行了会自动做很多动作。1、自动连Docker服务器 2、编译golang的liunx文件 3、docker build & docker run

在服务器上分别用docker images 和 docker ps -a查看运行情况,或者直接http访问发布的程序端口测试

测试成功!!

六 挂载目录

再Dockerfile 文件追加

VOLUME ["/home/app/go_mysql"]

执行

docker run --name 53b218e60c6c -it b9093911bd31 /bin/bash

name 后面为容器id   it 后面为 镜像id

说明:服务器需要搭建go环境
        1安装下载go 版本

yum install golang

2环境配置

vi /etc/profile

 在文件后面追加如下文本:

export GOROOT=/usr/lib/golang
export GOPATH=/home/go/lib
export GO111MODULE="on"
export GOPROXY=https://goproxy.io
export GOARCH=amd64
export GOOS=linux
export GOTOOLS=$GOROOT/pkg/tool

3保存退出

执行 wq

执行 source profile

4 查看go环境

go env GOPATH

查看docker 正在运行的某个容器下的目录结构与文件

docker exec -it containerID /bin/bash   进入容器交互  containerID:镜像ID

查看镜像 
docker ps -a
查看镜像cup 内存
docker stats

docker 和虚拟机区别
docker 是隔离应用 虚拟机是隔离整个运行环境

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值