用dcker极简打包java.jar镜像并启动

用dcker极简打包java.jar镜像并启动

一、本地打包好jar包

二、新建文件夹,将步骤1中的jar包拷贝到文件夹下

三、同目录下新建Dockerfile

xml 复制代码
## 基础镜像,这里用的是openjdk:8
FROM openjdk:8

## 将步骤一打包好的jar包 拷贝到镜像的 跟目录下[目录可以自定义/jar包名字也可以自定义]
COPY /your-java.jar /your-java.jar

## 在镜像启动容器后执行,这里为启动java服务
CMD ["java","-jar","-Dlogging.file.path=/data/web_log/java","-Dfile.base.path=/data/files/your-java","your-java.jar"]

四、定位到步骤二所在的目录,执行docker image build .脚本,构建镜像

输出参考:

五、查看打好的镜像:docker images

六、用tag指令给镜像命名与标记版本,执行:docker image tag 1908bae47993 your_java:v1,再查看镜像列表,得到如下:

七、启动容器:docker run --name your-java -d -p 7991:7991 your_java:v1,输出容器的id

docker ps -- 查看启动中的容器

docker ps -a --查看所有容器

状态为Up 容器启动成功

可以执行如下命令查看容器日志:

docker logs 8b4104b5b59f -- 8b4104b5b59f为需要查看日志的容器编号

或者

docker logs your-java -- your-java 为容器启动时指定的--name

或者执行命令docker exec -it your-java bash进入容器,找到日志对应的文件地址,在构建镜像时指定文件目录位置为:/data/web_log/java,参考如下:

输入:exit退出容器,回到主机

九、将本地镜像打包成tar包,方便无镜像仓库模式传输

  • docker save 镜像名字:版本号 > /root/打包名字.tar
  • docker save -o /root/打包名字.tar
    镜像名字:版本号

本次尝试使用1,执行:docker save your_java:v1 > /Users/xxxxxx/data/your-java-image.tar

十、将tar包加载为镜像

docker load < /Users/xxxxxx/data/your-java-image.tar

相关推荐
message丶小和尚5 分钟前
SpringBoot升级全纪录之项目启动
java·spring boot·mybatis
Allen Bright30 分钟前
IDEA配置本地maven
java·maven·intellij-idea
总是学不会.31 分钟前
【贪心算法】绿洲之旅:最少次数补给探索
java·算法·intellij-idea
就玩一会_33 分钟前
谷粒商城-消息队列Rabbitmq
java·rabbitmq·java-rabbitmq·谷粒商城
Viktor_Ye35 分钟前
实现金蝶云星空与钉钉数据无缝集成的技术方法
java·大数据·钉钉
程序员学姐43 分钟前
基于SpringBoot+Vue的高校社团管理系统
java·开发语言·vue.js·spring boot·后端·mysql·spring
.生产的驴1 小时前
Docker Seata分布式事务保护搭建 DB数据源版搭建 结合Nacos服务注册
数据库·分布式·后端·spring cloud·docker·容器·负载均衡
南宫生1 小时前
力扣-位运算-1【算法学习day.41】
java·学习·算法·leetcode
极客先躯1 小时前
高级java每日一道面试题-2024年11月22日-JVM篇-说说堆和栈的区别?
java·jvm··
2401_857439692 小时前
企业OA管理系统:Spring Boot技术应用与优化
java·spring boot·后端