在docker中部署Jar包

第一步制作Java的基础镜像

1.在指定目录中添加  java.dockerfile文件内容如下:

 

 

 以下是dockerfile文件内容

# Base images
FROM openjdk:8-jre-alpine
 
# Author
MAINTAINER Anynny (anynny9@hotmail.com)

# 导入字体(项目没用到的话可以注释掉,这些字体文件我是直接从windows系统中拷贝上去的)
COPY ["winfonts", "/usr/share/fonts/chinese"]


RUN	apk add --no-cache tzdata bash  ttf-dejavu fontconfig \
	&& fc-cache --force 


ENV TZ=PRC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

2.构造java基础镜像

进到到java.dockerfile文件所在的目录

 

 

 执行脚本构造镜像

cd /var/www/service/dockerimages \
docker build -t img_java_env -f java.dockerfile .

3.执行完之后即可查看镜像是否创建成功  

 

 第二步打包部署

1.编写jar的dockerfile文件,并上传至服务器的文件目录下

FROM img_java_env

COPY target/*.jar  /app.jar

ENTRYPOINT ["sh","-c","java -jar $JAVA_OPTS /app.jar $PARAMS"]

 打包jar包,并且把jar上传到服务器中

 

 

 

2.创建镜像并启动

进入到dockerfile所在的目录执行一下脚本(注意把xxx替换成有效的字符)

cd /var/www/service/xxxx.management; \
docker stop c_java_xxx_management; \
docker rm c_java_xxx_management; \
docker rmi img_java_xxx_management; \
docker build -t img_java_xxx_management  -f Dockerfile .; \
docker run -id \
-p 8063:8063 \
--name=c_java_xxx_management \
-v /var/www/service/xxx.management/sictfile:/sictfile \
-v /var/www/service/xxx.management/logs:/logs \
--privileged=true \
--restart=always \
img_java_xxx_management;   

3.开启防火墙和查看启动日志

# 开启防火墙
firewall-cmd --zone=public --add-port=8063/tcp --permanent
# 重启防火墙
systemctl restart firewalld.service
# 查看docker日志
docker  logs c_java_xxx_management

 

以上是比较简单的发布过程,如果有其它特殊的配置的话,自行调整  

 

posted @ 2022-12-05 12:56  雨末君.℡°  阅读(1922)  评论(0)    收藏  举报