docker执行java的jar包

方法一:使用jar包构造容器

将jar包放在/data/service/jar目录下

执行

bash 复制代码
docker run -d --restart=always --network portainer_network -p 9163:9163 -v /data/service/jar:/data/service/jar --name paofu-server openjdk:8 java -jar /data/service/jar/paofu.jar

方法二:使用DockerFile构造镜像文件

在此目录下/data/service/jar,创建Dockerfile文件

Dockerfile

bash 复制代码
FROM openjdk:8
MAINTAINER xzxz
ADD river.jar river.jar
# COPY application.yml application.yml
EXPOSE 9164
ENTRYPOINT ["java", "-jar", "river.jar"]
bash 复制代码
FROM: 基础镜像,基于jdk8镜像开始
MAINTAINER:作者
ADD:将jar文件添加(复制)到镜像内,river.jar源jar文件,river.jar复制得到的jar文件。
COPY: 将应用的配置文件也拷贝到镜像中。
EXPOSE:声明端口
ENTRYPOINT:docker启动时,运行的命令,这里容器启动时直接运行jar服务。
在添加或复制文件到镜像中时,如果不指定目标路径,则默认将文件添加到容器的/路径下。

构造镜像文件

bash 复制代码
docker build -f /data/service/jar/Dockerfile . -t river-server:boot
bash 复制代码
river-server: 镜像的名称
boot: 镜像的tag,如果不写,则默认为latest
.: 这个.一定不能忘记,最后的.代表本次执行的上下文路径

执行(注意网络一定要使用同一个)

bash 复制代码
docker run -d --restart=always --network portainer_network --name river-server  -p 9164:9164 river-server:boot

效果图

相关推荐
微尘寒风6 小时前
【Git】的安装和使用
java·git
y = xⁿ6 小时前
DeepSeek Harness 学习日记:关于Agent接口,工具调用的底层实现
android·java·学习
侧耳倾听1117 小时前
jwt使用简介
java·jwt
顶点多余7 小时前
那些在算法中适合巩固的知识点---1
java·前端·算法
AI人工智能+电脑小能手8 小时前
大白话说Java设计模式-46-责任链模式(业务实战篇)
java·设计模式·责任链模式·风控校验·servlet filter·spring interceptor·链式处理
jay神8 小时前
【计算机毕业设计】基于SpringBoot的程序教学辅助系统
java·前端·vue.js·spring boot·后端·毕业设计·课程设计
2601_962066498 小时前
【Sql Server】Update中的From语句,以及常见更新操作方式
android·java·数据库
yaoxin5211239 小时前
507. Java 反射 - 在 BeanFactory 中实现依赖注入
java·开发语言
OPEN-F10 小时前
C++模板教程:变参模板、折叠表达式与SFINAE
java·开发语言·c++
小张同学a.10 小时前
Docker 容器实战 1—— docker 基础与镜像构建
linux·运维·docker·容器