本文记录的为非自动方式,需要自上传jar,使用命令部署运行。
打包jar,并上传至云服务器
# 上传服务器命令
scp -P 22 jar文件 用户@服务器ip:/mnt/upload-files
构建镜像并运行服务
- 创建 Dockerfile 文件
# 创建部署目录
mkdir -p /mnt/docker-data/depoly/demo/
# 创建Dockerfile 文件
touch Dockerfile
# 编辑Dockerfile 文件
vim Dockerfile
- 写入jar运行指令
# 基础镜像,指向此前配置的jdk8
FROM jdk8:1.0
# 可无,作者
MAINTAINER zhaoqb
# 挂载点
VOLUME /tmp
# 复制文件并重命名文件
ADD demo.jar demo.jar
# 容器启动之后执行的命令,为缩短 Tomcat 的启动时间,添加java.security.egd的系统属性指向/dev/urandom作为 ENTRYPOINT
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/demo.jar"]
# 设置编码
ENV LANG C.UTF-8
- 镜像构建运行容器
# 构建当前镜像,需进入Dockerfile文件根目录 <demo> 为镜像名称
docker build -t demo .
# 查看镜像
docker images
# 运行容器 –restart=always: 容器停止或服务器开机之后会自动重新启动
docker run -d --restart=always --name demo -p 8091:8091 demo
# 查看容器运行日志
docker logs --tail 300 -f demo
jar包更新,服务重启
# 复制至容器中
docker cp demo.jar big-data:/demo.jar
# 重启容器
docker restart demo