Java部署jar包 外部文件 jar部署到docker (亲测有效)

前期准备:

1.XXX.jar   一个jar包

2.在服务器安装docker

3.在服务器创建Dockerfile文件

4.构建Jar包镜像

5.运行镜像,部署jar包

想用服务器自己做测试的小伙伴,可以去华为云购买,华为云有新用户免费一个月的服务器,足够做测试了,家里有矿的也可以直接去阿里云买个一年的 新用户99元

上干货:

docker相关概念简单描述:

Docker image:包含运行所需的文件。
Docker container:运行一个镜像就是一个容器。
Docker hub/registry:共享和管理镜像的库。

1、准备一个jar包

注:这里我将jar包的名称改为app.jar方便后续操作

然后可以通过Xftp将本地jar包传输到服务器的home目录中

(在home目录中创建一个文件夹)创建文件夹命令:mkdir 文件夹名称

2、创建Dockerfile文件

              2.1 然后在创建的文件夹中创建Dockerfile文件  创建文件命令touch Dockerfile

              2.3 然后cd 进入目录 vi Dockerfile      进入后按 i 将下面内容粘贴

FROM openjdk:8
ADD app.jar /user/app.jar
ENTRYPOINT ["java","-jar","/user/app.jar"]

FROM:指定基础镜像
ADD:复制当前文件夹下的app.jar到容器中的/user/app.jar位置
ENTRYPOINT:容器启动后执行的命令

粘贴完成后按Esc 然后输入    :wq   结束

3、构建镜像

在/home目录下执行如下命令,把Dockerfile构建成docker image

docker build -t application/app .

application/app 为自定义的镜像名称

. 指代当前目录下的Dockerfile

4、运行镜像,部署jar包

docker run -d --restart=always --name app -p 8888:8888 -v /usr/application/app/logs:/usr/app/logs application/app

-d --restart=always:表示服务器重启后容器自动重启。

–name app:指定容器名称,一般使用服务名。

-p 8888:8888:把右边容器的8888端口映射到左边服务器8888端口。

-v /usr/application/app/logs:/usr/app/logs:把容器的/usr/app/logs目录,挂载到服务器的/usr/application/app/logs目录,这样数据保存在服务器上,容器重启时数据不丢失。

application/app:镜像名称。

做完以上步骤后你可以访问服务接口测试一下服务是否正常运行。

如果无法连接服务,检查一下防火墙是否开通对应的端口,参考linux开放/禁止指定端口号,查看所有开放的端口号,防火墙开启关闭
 

 5、docker安装

        5.1、安装命令

                yum install docker
        5.2、启动docker服务

                service docker start
        5.3、设置开机启动

                chkconfig docker on
        CentOS 7 命令如下

        5.5、启动docker服务
                systemctl start docker.service

        5.6、设置开机启动
                systemctl enable docker.service

docker设置国内阿里云的镜像加速器

修改文件/etc/docker/daemon.json

vi /etc/docker/daemon.json

添加如下内容后保存

{
"registry-mirrors": ["https://alzgoonw.mirror.aliyuncs.com"],
"live-restore": true
}

重启docker

systemctl restart docker

能正常查看版本说明安装成功

docker version

6、常用命令


6.1、启动docker服务

service docker start
或者
systemctl start docker


6.2、停止docker服务

service docker stop
或者
systemctl stop docker


6.3、拉取镜像

docker pull image_name


6.4、查看镜像

docker images


6.5、删除镜像

docker rmi docker.io/tomcat:7.0.77-jre7
或者
docker rmi b39c68b7af30


6.6、进入容器

docker exec -it 999318c7d567 /bin/bash
6.7、查看正在运行的容器

docker ps


6.8、查看所有容器(运行和终止的)

docker ps -a


6.9、启动、停⽌、重启容器

docker start container_name/container_id
docker stop container_name/container_id
docker restart container_name/container_id

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值