准备:
可联网linux服务器一台
java服务jar包
docker部署相对于jar包和war包部署的优势就是在系统没有安装java环境或者tomcat环境情况下可以让程序快速发布,并且很方便的去管理应用,这也是我经常用的java程序部署方式。
如果机器没有安装docker环境,则需要先执行如下两步安装docker。
安装docker
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum makecache fast
sudo yum install -y docker-ce
加速docker镜像
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://f4j3yfty.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
安装完docker环境即可进行部署,部署时候我们需要准备一个guns.jar,放到/home下即可。
为了保证docker容器中的运行时间和服务器真实时间一致,检查一下/etc/timezone文件。
# 编辑/etc/timezone文件
vim /etc/timezone
# 检查文件的内容是否如下
Asia/Shanghai
之后执行如下命令即可启动Guns的docker容器。
docker run -d --net=host \
-v /etc/timezone:/etc/timezone \
-v /etc/localtime:/etc/localtime \
-e "TZ=Asia/Shanghai" \
-v /home/guns.jar:/home/guns.jar \
--name guns java:8 java -jar /home/guns.jar
执行之后,看到程序已经运行起来。
使用如下命令可以看到程序的启动日志:
docker logs 容器ID -f