用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

相关推荐
mldong4 小时前
引擎从不发一条消息:jeeflow 的两类扩展点与消息模块的分工
java·架构
君顾15 小时前
智慧零售实战指南:从技术架构到落地方案全解析
java·开发语言·零售
名字还没想好☜5 小时前
用 systemd 托管后台服务:Restart 策略、日志接管、资源限制与开机自启全踩一遍
运维·docker·kubernetes
zhanghe6876 小时前
es的密码带有特殊字符,导出
java
pnoker6 小时前
IoT DC3 概念解读:把设备抽象成一套语义模板——位号、指令、事件与面向智能体的设备建模
java·人工智能·物联网·iot·dc3
my_realmy6 小时前
Java SE 基础学习笔记(一):面向对象、继承多态、抽象接口与异常(JDK 8)
java·多线程·并发··生产者消费者模式
动力 continue6 小时前
docker容器大舞台,创建镜像,构造类,基础速通
docker·容器
天远数科6 小时前
风险治理实战:基于天远车信盟出险构建自动化理赔核保流水线
java·网络·人工智能·自动化
Akiyama_Mio-Kon7 小时前
2026 最新:Dify 本地 Docker 部署完整教程(Windows + Git Bash)
windows·git·docker
骇客野人7 小时前
SpringBoot电商系统用户注册、登录、留存及数据埋点设计与落地实施方案
java·spring boot·后端