用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

相关推荐
雨辰AI42 分钟前
人大金仓 K8s 密评合规加固|国密全链路加密 + 权限收敛容器化落地(三级密评直通版)
java·云原生·容器·kubernetes·政务
Pluchon10 小时前
Java个人综合项目——萌部落社区V2.0
java·python·spring·spring cloud·postman·idea
梦雨生生11 小时前
java开发工具(学习第一天)
java·开发语言·学习
她说可以呀12 小时前
Spring-ai-alibaba文生图
java·人工智能·spring
营养充电站12 小时前
KMP全栈开发:从Android到AI Agent的技术演进与实践
人工智能·算法·docker·jupyter
松仔log13 小时前
Java中级——组合和继承
android·java·开发语言
不才不才不不才13 小时前
Spring 源码系列(16): doDispatch 全流程——一次请求的主干链路
java·后端·spring
小义_14 小时前
K8s 全网高频常用命令大全
docker·容器·kubernetes
snow@li14 小时前
HikariCP:高性能数据库连接池全景深入梳理
java·数据库
sugar__salt14 小时前
Spring 三层架构与 IoC、依赖注入完全指南
java·spring boot·后端·spring·架构·maven·intellij-idea