docker部署jar,后续只需要更新jar包即可
需求背景
常规方式的部署jar包,是直接将jar包打入镜像,每次更新上线,都需要重新上传镜像,如果是没有外网的远程内部服务器,传输速度很满,因为镜像可能是几百M。
解决方案
我们只需要将java8镜像上传一次到服务器,后续只需要更新jar包即可。
目录结构
- jar - 用于放打包好的jar
- logs - 映射日志文件
- docker-compose.yml
其中docker-compose.yml
如下:
version: '3.0' services: app: container_name: app restart: always image: java:8 ports: - 8080:8080 volumes: - ./jar/app.jar:/root/app.jar:z - ./logs/:/root/logs environment: - TZ=Asia/Shanghai entrypoint: java -jar -Dfile.encoding=utf-8 /root/app.jar privileged: true
基础镜像
# 下载镜像 $ docker pull java:8 # 导出镜像 $ docker save 镜像ID > xxx.tar # 加载镜像 $ docker load -i xxx.tar
--------------------小马哥原创----------------------