io.fabric8:docker-maven-plugin插件在idea多模块之下使用
io.fabric8:docker-maven-plugin插件在多模块之下使用准备,装docker,基于Centos(其他的可参考)首先安装好docker容器,会自动生成文件/usr/lib/systemd/system/docker.service开启docker远程服务编辑文件vi /usr/lib/systemd/system/docker.service找到,ExecStart,添加 -
·
io.fabric8:docker-maven-plugin
插件在多模块之下使用
准备,装docker,基于Centos(其他的可参考)
-
首先安装好docker容器,会自动生成文件
/usr/lib/systemd/system/docker.service
-
开启docker远程服务
-
编辑文件
vi /usr/lib/systemd/system/docker.service
-
找到,ExecStart,添加
-H tcp://0.0.0.0:2375
(为该值),修改其值为下ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H fd:// --containerd=/run/containerd/containerd.sock
-
重启加载配置,重启服务
systemctl daemon-reload systemctl restart docker
-
在IDEA中,引入插件
-
在需要使用该插件的模块中引入插件,一般是在API的模块
<plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.33.0</version> .... </plugin>
-
使用内部配置,进行生成容器的配置(不能使用外部Dockerfile,多项目下配置的拷贝路径有问题),如下:
<plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.33.0</version> <configuration> <!--第一步开启的docker远程服务--> <dockerHost>tcp://localhost:2375</dockerHost> <verbose>true</verbose> <images> <image> <!--镜像名称,按需填写--> <name>ted005/protacol</name> <alias>${project.version}</alias> <build> <!--相当于Dockerfile中的from --> <from>openjdk:12</from> <!--相当于Dockerfile中的volume --> <volumes> <volume>/tmp</volume> </volumes> <!--相当于Dockerfile中的workdir --> <workdir>.</workdir> <!--相当于Dockerfile中的entryPoint --> <entryPoint> <exec> <arg>java</arg> <arg>-jar</arg> <arg>server.jar</arg> </exec> </entryPoint> <assembly> <!--生成的模式,默认为dir--> <mode>dir</mode> <!--输出的目录,在镜像容器中的位置及编译生成的jar文件名称--> <targetDir>/server.jar</targetDir> <!----> <descriptorRef>project</descriptorRef> </assembly> </build> </image> </images> </configuration> </plugin>
可参考帮助文档官网:http://dmp.fabric8.io/
-
运行命令
#在父目录中运行打包 mvn clean package #切换进入API所在的目录,需要生成的容器,并编译 mvn docker:build
更多推荐
已为社区贡献1条内容
所有评论(0)