Docker启动jar包(Docker自定义jar包镜像并启动)

一、Docker启动jar包(不创建镜像,这种比较简单)

1.查找java镜像

docker search java

2.安装镜像

docker pull java:8

3.查看镜像

docker images

4.运行镜像,并设置 映射路径及端口。

当jar包有更新时,将jar包放入主机的指定位置,重启docker容器就即可。

docker run -d -p 9420:9420 -v D:\xxxxxx\gateway.jar:/var/lib/docker/jar/gateway.jar --name dev-gateway java:8 java -Xms64m -Xmx256m -jar /var/lib/docker/jar/gateway.jar

--name	设置容器名字
-p 		设置端口映射
-e		设置mysql root用户密码
-d		后台运行容器
-i: 以交互模式运行容器,通常与 -t 同时使用;
-i, --interactive=false Keep STDIN open even if not attached
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;	
-t, --tty=false Allocate a pseudo-TTY
-v:	/home/license/shiwei-app/magic-api/lib/magic-api-demo.jar:/var/lib/docker/jar/magic-api-demo.jar
表示将宿主主机的jar文件,映射到容器中(分号前为宿主主机的路径就是服务器的路径,分号后为容器中的路径)

5.列出正在运行的容器。

docker ps
docker ps -a 
docker logs -t -f 容器名字 查看日志

二、使用Dockerfile定制jar镜像

1.在jar包所在文件夹创建 Dockerfile 文件

1、新增文件,这个目录自定义就行
在这里插入图片描述

# 镜像(等会就要使用上传的jar包制作)的基础环境
FROM java:8

# 镜像维护人员的信息
MAINTAINER Rqateng

#为生成的镜像添加元数据标签信息
LABEL description="learn docker"

# 第一个是编译镜像时文件位置(gateway1.jar) 第二个是将文件复制到镜像(/var/lib/docker/images-jar/gateway1.jar)中
ADD ac-gateway1.jar  /var/lib/docker/images-jar/gateway1.jar

# 镜像所暴露出的端口(定义一个不冲突的即可),用于访问镜像使用,后边会和jar的项目端口对接
EXPOSE 9420

# 设置容器的入口程序,直接使用镜像名即可
#ENTRYPOINT ["nohup","java","-jar","/var/lib/docker/images-jar/gateway1.jar",">gateway1_log.out &"]#可以指定启动日志存放位置
ENTRYPOINT ["java","-jar","/var/lib/docker/images-jar/ac-gateway1.jar"]

2.制作镜像

#复制粘贴时,小心细节,结尾一定要加空格再加点
docker build -t gateway:tag1 .
#注意后面的点(.)表示Dockerfile文件所在的位置,点代表在当前位置,或者指定其他位置。
#运行完成可以查看镜像
docker images

在win10上docker可能会出现授权访问文件目录
在这里插入图片描述

3.运行自定义镜像,并设置 映射路径及端口。

docker run -d -it -p 9420:9420 -v D:\xxxxx\gateway1.jar:/var/lib/docker/images-jar/gateway1.jar --name gateway1 gateway:tag1

当jar包有更新时,将jar包放入主机的指定位置,重启docker容器就即可。

三、arm64/aarch64系统内核无法启动解决传送门

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值