利用Maven打包docker镜像上传docker容器

开启docker容器的远程访问

	#编辑docker配置文件
	vim /usr/lib/systemd/system/docker.service
	#修改ExecStart行为下面内容
	ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock 
	#重新加载docker配置
	systemctl daemon-reload // 1,加载docker守护线程
	systemctl restart docker // 2,重启docker 

配置项目的pom.xml

            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.0.0</version>
                <configuration>
                      <!-- 镜像名称及版本 --><imageName>${docker.repostory}/${docker.registry.name}/${project.artifactId}:${project.version}</imageName>
                    <!-- 指定Dockerfile所在的路径 -->
          <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
            		<!-- docker容器的地址 -->
                    <dockerHost>http://192.168.208.24:2375</dockerHost>
                    <!-- 需要打包的本地资源 -->
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>

配置项目的Dockerfile

在这里插入图片描述
Dockerfile内容

	FROM openjdk:8-jdk-alpine
	ADD pjsl.jar pjsl.jar
	EXPOSE 9092
	ENTRYPOINT ["java", "-jar", "pjsl.jar"]
	CMD echo "xx项目开始运行!"

打包上传

在这里插入图片描述

	"C:\Program Files\Java\jdk1.8.0_131\bin\java.exe" -Dmaven.multiModuleProjectDirectory=D:\work\workspace\idea\pjsl -Dmaven.home=D:\work\apache-maven-3.6.1 -Dclassworlds.conf=D:\work\apache-maven-3.6.1\bin\m2.conf "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2019.1.1\lib\idea_rt.jar=64641:C:\Program Files\JetBrains\IntelliJ IDEA 2019.1.1\bin" -Dfile.encoding=UTF-8 -classpath D:\work\apache-maven-3.6.1\boot\plexus-classworlds-2.6.0.jar org.codehaus.classworlds.Launcher -Didea.version2019.1.1 -s C:\Users\tang_\.m2\settings.xml -Dmaven.repo.local=C:\Users\tang_\.m2\repository com.spotify:docker-maven-plugin:1.0.0:build
[INFO] Scanning for projects...
[WARNING] 
[WARNING] Some problems were encountered while building the effective model for com.bootdo:pjsl:jar:1.0.0
[WARNING] 'dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique: org.apache.poi:poi-ooxml:jar -> version 3.9 vs 4.0.1 @ line 340, column 21
[WARNING] 
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING] 
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING] 
[INFO] 
[INFO] --------------------------< com.bootdo:pjsl >---------------------------
[INFO] Building pjsl 1.0.0
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- docker-maven-plugin:1.0.0:build (default-cli) @ pjsl ---
[INFO] Using authentication suppliers: [ConfigFileRegistryAuthSupplier]
[INFO] Copying D:\work\workspace\idea\pjsl\target\pjsl.jar -> D:\work\workspace\idea\pjsl\target\docker\pjsl.jar
[INFO] Copying D:\work\workspace\idea\pjsl\src\main\docker\Dockerfile -> D:\work\workspace\idea\pjsl\target\docker\Dockerfile
[INFO] Building image 192.168.208.24/test/pjsl:1.0.0
Step 1/5 : FROM openjdk:8-jdk-alpine

 ---> a3562aa0b991
Step 2/5 : ADD pjsl.jar pjsl.jar

 ---> 5021e113b159
Step 3/5 : EXPOSE 9092

 ---> Running in 82245c8840a0
Removing intermediate container 82245c8840a0
 ---> 1e723cb0f917
Step 4/5 : ENTRYPOINT ["java", "-jar", "pjsl.jar"]

 ---> Running in d373e480408b
Removing intermediate container d373e480408b
 ---> 43d209a5d3c8
Step 5/5 : CMD echo "票均申领项目开始运行!"

 ---> Running in 3f96a1b9420e
Removing intermediate container 3f96a1b9420e
 ---> e5d73b205ed0
ProgressMessage{id=null, status=null, stream=null, error=null, progress=null, progressDetail=null}
Successfully built e5d73b205ed0
Successfully tagged 192.168.208.24/test/pjsl:1.0.0
[INFO] Built 192.168.208.24/test/pjsl:1.0.0
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  22.976 s
[INFO] Finished at: 2020-05-20T11:21:41+08:00
[INFO] ------------------------------------------------------------------------

Process finished with exit code 0

查看镜像

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值