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

效果图

相关推荐
forestsea4 分钟前
Spring Boot 与 Java 决策树:构建智能分类系统
java·人工智能·spring boot·深度学习·决策树·机器学习·数据挖掘
hxj..13 分钟前
【设计模式】代理模式
java·设计模式·代理模式·动态代理
zpz200113 分钟前
Jenkins的环境部署
java·运维·jenkins
程序猿小D20 分钟前
第三百三十节 Java网络教程 - Java网络UDP服务器
java·开发语言·网络·网络协议·udp·多线程
极客先躯30 分钟前
高级java每日一道面试题-2024年11月18日-基本篇-Java创建对象有几种方法?
java·new 关键字·使用克隆·使用反序列化·使用工厂模式·使用构建者模式·使用依赖注入
LRcoding30 分钟前
【Spring Boot】# 使用@Scheduled注解无法执行定时任务
java·spring boot·后端
wsxlgg41 分钟前
docker搭建jpom
docker
FLGB42 分钟前
Docker 安装单机版mysql 并持久化数据
mysql·docker·容器
杰哥的技术杂货铺2 小时前
Centos 7 安装 Docker 最新版本
linux·docker·centos
moxiaoran57532 小时前
Centos使用docker搭建Graylog日志平台
docker·centos·graylog