docker运行jar文件

一、环境

      本地虚拟机安装的centos7


二、安装docker

   通过 uname -r 命令查看你当前的内核版本

[root@runoob ~]# uname -r 3.10.0-327.el7.x86_64

《docker运行jar文件》

安装 Docker

Docker 软件包和依赖包已经包含在默认的 CentOS-Extras 软件源里,安装命令如下:

[root@runoob ~]# yum y install dockerio


三、开启加速

       docker的镜像仓库在国外,下载会很慢,启用阿里云加速。

       在/etc/docker目录下创建daemon.json文件,添加如下内容

腾讯云加速

{“registry-mirrors”: [“https://mirror.ccs.tencentyun.com”]}

阿里云加速

{
  "registry-mirrors": ["https://almtd3fa.mirror.aliyuncs.com"]
}

       https://almtd3fa.mirror.aliyuncs.com为阿里云的加速地址。修改后,重启docker

systemctl daemon-reload
service docker restart

 


四、下载java镜像

         下载java镜像,tag为8u111

docker pull java:8u111

 

 


五、执行可运行的jar文件

停止springboot容器

docker stop springboot

删除springboot容器

docker rm springboot

查看所有的容器ip和名字

docker inspect –format=’{{.Name}}{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}‘ $(docker ps -aq)

将test.jar放在虚拟机的/usr目录下,然后执行命令启动jar

docker run -tid –net=host -v /opt/pj/business.jar:/usr/business.jar –name business java:8u111 java -jar /usr/business.jar

 

  -t: 为container分配一个伪终端(pseudo-tty),并绑定到容器的标准输入上

-i: 让容器的标准输入保持打开

-d: 使容器在后台以守护态(Daemonized)形式运行

     –net=host 使用host模式的容器可以直接使用docker host的IP地址与外界通信

     -v /usr/springboot-1.jar:/usr/springboot-1.jar 表示将宿主主机的jar文件,映射到容器中(分号前为宿主主机的路径,分号后为容器中的路径)

     –name business表示为该容器取一个全局唯一的名称,这里我取的名称为business

    java:8u111 表示镜像文件的名称和tag

    java -jar /usr/business.jar 表示运行jar包,注意:这里的jar包为容器中的位置,是通过前面的-v属性映射的

    原文作者:bianchengninhao
    原文地址: https://blog.csdn.net/BianChengNinHao/article/details/80143950
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞