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

效果图

相关推荐
TE-茶叶蛋几秒前
Maven install 的原理
java·maven
想带你从多云到转晴几秒前
06、数据结构与算法---二叉树
java·数据结构·算法
likerhood1 分钟前
设计模式:原型模式(Prototype Pattern)java版本
java·设计模式·原型模式
wuxuanok1 分钟前
Maven 编译报错:java.lang.NoSuchFieldError: JCImport 问题总结
java·开发语言·maven
薛定谔的猫19822 分钟前
gradio学习代码部分
java·前端·javascript
Devin~Y2 分钟前
大厂Java面试实战:Spring Boot + Redis + Kafka + Kubernetes + RAG 的三轮追问(附答案解析)
java·spring boot·redis·spring cloud·kafka·kubernetes·resilience4j
酉鬼女又兒3 分钟前
Leetcode 26.删除有序数组中的重复项 双指针巧解有序数组去重:从快慢指针到原地修改算法的精髓
java·数据结构·算法·leetcode·职场和发展·蓝桥杯·排序算法
ch.ju6 分钟前
Java程序设计(第3版)第二章——循环结构4
java
knight_9___10 分钟前
RAG面试篇11
java·面试·职场和发展·agent·rag·智能体
念越11 分钟前
Java 文件操作与IO流详解(File类 + 字节流 + 字符流全总结)
java·开发语言·io