用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

相关推荐
开开心心_Every1 小时前
快速隐藏程序工具自定义快捷键一键切换
java·开发语言·前端·spring·智能手机·word·intellij-idea
萧瑟余晖2 小时前
Spring Batch核心模型与快速上手详解
java·spring·batch
缓慢更新2 小时前
AI 辅助生成单测:从接口定义到用例的流水线
java·服务器·前端·网络·数据库·人工智能
DarkAthena4 小时前
wslc ps 卡死的排查:一次「停容器不停 VM」引发的连环故障
docker
LMT流氓兔4 小时前
第五单元——第十六课:给书店助手加上网页界面
java·开发语言·jvm·人工智能·oracle·langchain·1024程序员节
小沈同学呀5 小时前
【Agent开发第十五期】部署上线:把 Alex 搬进浏览器,15 期全栈串联收官
docker·agent·从零搭建ai助手
wangbing11255 小时前
平台介绍-modbus设备调试
java
lwx9148525 小时前
Docker-安装SSH服务
docker·容器·ssh
西索斯coding5 小时前
gpt-image-2.5-sunburst 和 gemini-3.1-flash-image 差多少?60 组项目素材的成功成本评测框架
java·linux·gpt·ai
wuminyu6 小时前
Java字节码学习总结:字节码如何加载、解析和执行
java·linux·c语言·jvm·c++