用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

相关推荐
怒放吧德德2 小时前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆4 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
心之语歌6 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
华仔啊8 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang8 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
Ray Liang9 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解9 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端
fetasty13 小时前
rustfs加picgo图床搭建
docker
SimonKing13 小时前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean14 小时前
Jackson View Extension Spring Boot Starter
java·后端