服务端准备
如果要将自己的web程序打包成一个docker,那么需要在服务器上部署相关的环境
安装docker 环境`
yum install -y docker-engine
sudo yum install docker
运行docker 环境
start docker.service
systemctl enable docker
linux 防火墙开放端口
systemctl stop firewalld
systemctl mask firewalld
systemctl stop iptables
//开放8080端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
//
//防火墙
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload
构建goweb的docker镜像
在这里我是在windows 环境下build的,
因此首先需要切换到main.go 存在的路径,然后输入
SET GOARCH=amd64
SET GOOS=linux
go build
FROM alpine:latest
#在doc`docker build -t appmng:V1.0 -f Dockerfile .`ker的根目录下创建相应的使用目录
RUN mkdir -p /go/goweb
#设置工作路径
WORKDIR /go/goweb
COPY . .
#暴露容器内部端口
EXPOSE 8081
#入口
ENTRYPOINT ["/go/goweb/smallist"]
经过build 得到一个linux识别的二进制包,这个时候将其拷进服务器中,使用以下命令生成镜像:
//linux授777的权限
chmod -Rf777 smalllist
docker build -t smalllist:v1.0 -f Dockerfile .
运行
docker build -t smalllist:v1.0 -f Dockerfile .