首页 > 编程知识 正文

docker运行jar包,docker容器中放多个jar包

时间:2023-05-04 18:53:41 阅读:48681 作者:2804

Docker这项技术也是开发中值得我们掌握的技术。 接下来,让我们看看如何使用Docker容器化技术构建和运行,以及Spring Boot项目的可执行Jar包。

演示环境

中心7

Docker 1.13.1

Spring Boot 2.1.1.RELEASE

准备Spring Boot项目

构建Spring Boot项目的方法有很多,也不是我们要讨论的重点,所以在这里我不多做说明。 我们为项目准备简单的hello控制器。 其中有一个sayHello ()方法,映射到我们访问项目的跟随路径。 访问时,Hello Jerome,This is docker image!

打包项目并生成可执行的jar

导航到项目的根目录,运行mvn clean package以打包项目,然后在target目录下生成xxx.jar的可执行jar文件。

创建文档服务器镜像

首先,将准备的xxx.jar复制到我们的CentOS 7计算机上。 我不说明复印的方法。 大家各自加把劲吧。 在这里,我将我生成的docker-demo-0.0.1.jar复制到了/lgdby/docker/testdocker/文件夹中。 这里也不一定使用Linux机器。 这里只是我用了演示,尽量符合生产环境。

创建文档文件

使用vi Dockerfile编辑文件。

关于以上命令的说明:

从docker仓库获取openjdk作为项目的容器

VOLUME指向/tmp目录。 由于Spring Boot使用内置的Tomcat容器,因此Tomcat默认使用/tmp作为工作目录。 效果是在主机的/lgdby/lib/docker目录下创建临时文件并连接到容器的/tmp。

项目docker-demo-0.0.1.jar将作为app.jar添加到容器中。

输入点执行项目app.jar。 为了缩短Tomcat的启动时间,将系统属性/dev/urandom添加为Entropy Source

#引出一个来自Java :8 JDK为1.8的docker image

#维护者的作者是bingo

# demo-0.0.1-SNAPSHOT.jar是您上传的jar包,将替换为jar包的名称

# demo.jar是您重命名该jar包并在容器中运行的原因

# expose容器露出的端口数是jar在容器中运行的端口数量

#在# entrypoint容器启动后执行的命令中,java -jar demo.jar将启动jar

构建Docker镜像

在/lgdby/Docker/testdocker目录中,运行docker命令以生成镜像。

此命令使用docker build命令构建镜像,并将镜像命名为jerome.xin/docker-demo,以便TAG在latest中位于当前文件夹下。

使用docker images显示所有镜像。

我们发现镜像列表中有我们生成的镜像jerome.xin/docker-demo。

执行镜像

镜像的创建按照上述步骤完成。 接下来只需使用

docker run-d-- restart=always-- name docker-demo-v/usr/local/apps/docker-demo/logs 3360/home/docker

这表示docker容器将在停止或打开服务器后自动重新启动--restart=always

- v/usr/local/apps/docker-demo/logs :/home/docker-demo/logs :镜像中的/home/docker-demo/logs目录

-p 7500:7500 :端口映射,默认启动为7500

显示dockerlogs----tail300--fdemo启动日志

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。