使用docker-maven-plugin插件构建和推送Docker映像

使用docker-maven-plugin插件构建和推送Docker映像

2018年03月14日 17:02:58 She_lock 阅读数:4486 标签: docker-maven-plugin使用docker快捷发布 更多

个人分类: java web

版权声明:原创博文,转载请注明出处~ https://blog.csdn.net/She_lock/article/details/79557022

需求

我用idea写的代码,然后,利用docker-maven-plugin 插件,希望执行通过mvn clean package docker:build命令,将代码构建成Docker镜像,直接推送到我的本地虚拟机centos下的docker环境下,可以直接用docker命令运行。

添加插件

pom.xml 文件添加docker-maven-plugin 插件

        <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>0.4.13</version>
                <configuration>
                    <imageName>olysa/bootdo:1.0.2</imageName>
                    <baseImage>java</baseImage>
                    <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>
                    <dockerHost>http://192.168.56.102:2375</dockerHost>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>

<dockerHost>http://192.168.56.102:2375</dockerHost> 这里要注意: 
1. 有的文档用的https协议,我这本地的,如果用https协议,会报Unrecognized SSL message, plaintext connection?,根据自己的情况而定。 
2. http://192.168.56.102:2375 需要填写你的centos ip地址,并且防火墙启用centos上的2375端口。如何开放端口请移步iptables 开放防火墙端口

docker开启远程访问

如果没有开启远程访问,会报 Connect to 192.168.56.102:2375 [/192.168.56.102] failed: Connection refused: connect

  • /usr/lib/systemd/system/docker.service,配置远程访问。主要是在[Service]这个部分,加上下面两个参数:
cd /usr/lib/systemd/system

vi docker.service

ExecStart=
下面加
-H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

 

  • docker重新读取配置文件,重新启动docker服务。
systemctl daemon-reload  //重新读取配置文件

systemctl restart docker //重新启动服务

构建Docker镜像

  • 准备工作都最配好了,在idea工程下pom.xm文件目录下,执行以下代码,构建Docker镜像。
mvn clean package docker:build
  • 1

安静等一段时间构建完成后,去centos下,查看镜像。执行docker images: 

可以看到,配置的代码已经构建成镜像文件,并上传到虚拟机里面了。

启动镜像

docker run -d -p 8000:8089 olysa/bootdo:1.0.2  //8089是我代码中的port,8000是映射端口
  • 1

再访问 http://192.168.56.102:8000之前,记得开启防火墙8000 端口。

iptables -I INPUT -p tcp --dport 8000 -j ACCEPT   //当前生效,重启虚拟机后又失效了
  • 1

 

涉及到的一些docker命令就不多解释了,你可以参考我的另一篇文章 Docker常用命令

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值