第一步:服务搭建docker环境
1、docker安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun #一键安装脚本systemctl enable docker.service #设置docker开机启动systemctl restart docker.service #启动docker服务2、开启docker远程访问端口
编辑/usr/lib/systemd/system/docker.service文件添加-H tcp://0.0.0.0:12375 -H unix://var/run/docker.sock 如下图:

保存文件后重新加载配置然后重新启动
systemctl daemon-reload # 重新加载配置systemctl restart docker.service # 重启docker服务3、开放端口
在云服务器防火墙管理端后台放开12375端口。
4、测试
curl http://127.0.0.1:2375/info如果出现 以下信息则说明配置成功

第二步:创建一个测试项目
只写了一个测试接口


第三步:idea安装docker插件
高版本的idea会自带,如果没有直接下载安装,然后重启idea

配置docker插件,换成自己的服务器地址和端口号即可。

连接成功

第三步:pom文件中加入docker插件依赖
<!--docker-maven-plugin插件打包--><plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.0.0</version> <configuration> <!--镜像名称--> <imageName>${project.artifactId}</imageName> <!--指定标签--> <imageTags> <imageTag>latest</imageTag> </imageTags> <!--基础镜像jdk1.8--> <baseImage>java</baseImage> <!--制作者提供本人信息--> <maintainer>617594538@qq.com</maintainer> <!--切换到Root目录--> <workdir>/ROOT</workdir> <cmd>["java", "-version"]</cmd> <entryPoint>["java", "-jar", "${project.build.finalName}.jar"]</entryPoint> <!--指定DockerFile路径--> <!--<dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>--> <!--指定远程docker api地址--> <dockerHost>http://120.53.247.15:12375</dockerHost> <!-- 这里是复制 jar 包到 docker 容器指定目录配置 --> <resources> <resource> <targetPath>/ROOT</targetPath> <!--用于指定需要复制的根目录--> <directory>${project.build.directory}</directory> <!--用于指定需要复制的jar文件--> <include>${project.build.finalName}.jar</include> </resource> </resources> </configuration></plugin>第四步:打包
更新maven依赖后(clean、install)
执行docker打包指令 mvn docker:build

打包成功

在这可以看到打包成功的docker镜像

在服务器中执行 docker images 可以查看所有的镜像

第五步:运行
在服务器中运行镜像
# 使用docker镜像test:latest以后台模式启动一个容器,并将容器命名为test。绑定容器的 8080 端口,并将其映射到本地主机 127.0.0.1 的 8080 端口上。docker run --name test -p 8080:8080 test:latest
访问接口成功,部署完成

第七步:将镜像打成压缩包
# 将test:latest镜像导出为test.tar.gz压缩包docker save test:latest | gzip > test.tar.gz压缩包在根目录下

第八步:将docker镜像的压缩包导入
gunzip -c test.tar.gz | docker load导入后 docker images 查看镜像即可。
第九步:结束~



