docker简单部署jar包及更新学习笔记

  1. 在服务器的/home目录下创建目录存放jar包及Dockerfile文件

  2. 将jar上传到该目录下

  3. 执行vim Dockerfile 命令创建Dockerfile文件,内容如下:

FROM java:8
MAINTAINER test
ADD operation-manager-0.0.1-SNAPSHOT.jar operation.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","operation.jar"]

其中:
from java:8 拉取一个jdk为1.8的docker image
maintainer 作者是test
operation-manager-0.0.1-SNAPSHOT.ja 就是你上传的jar包,替换为jar包的名称
operation.jar 是你将该jar包重新命名为什么名称,在容器中运行
expose 该容器暴露的端口是多少,就是jar在容器中以多少端口运行
entrypoint 容器启动之后执行的命令,java -jar operation.jar 即启动jar

  1. 创建好Dockerfile文件之后,执行命令 docker build -t operation . 构建镜像:
    注意最后的 . 表示 Dockerfile 文件在当前目录下
    operation 指定构建之后镜像名称
  2. 镜像构建成功之后,就可以运行容器了
    一般是用 docker run -d --name operation -p 8080:8080 operation 命令启动,
    但是为了后续的项目更新方便,这里推荐使用下面这条命令:
docker run -d --name operation -p 8083:8080 -v /home/fxy/docker/service1/operation-manager-0.0.1-SNAPSHOT.jar:/operation.jar operation:latest

其中:
-p 映射端口8761 本机的端口 映射的容器的端口
-v 挂载目录/home/fxy/docker/service1/operation-manager-0.0.1-SNAPSHOT.jar:本地目录 /operation.jar容器目录,在创建前容器是没有software目录的,docker 容器会自己创建
–privileged=true 关闭安全权限,否则你容器操作文件夹没有权限
operation:latest 使用的镜像名称及版本

  1. 然后docker ps 看看你的容器有没有在运行即可,运行成功会出现以下内容:

  2. docker logs --tail 300 -f operation查看启动日志(最后300行)

  3. 项目有更新时,只需将/home/fxy/docker/service1/下的jar替换掉,然后执行

docker stop operation
docker start operation

即可更新完毕,可以通过docker ps查看是否启动成功,或者调用接口验证


版权声明:本文为weixin_44861214原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。