为了个人更方便地开发和部署,我使用了docker-maven-plugin推送至dockerhub,这样在自己的服务器上重新拉一下就实现了部署,非常方便
官方文档:https://github.com/spotify/docker-maven-plugin
首先设置 maven
的 setting.xml
,在 servers
的标签下添加:
1 2 3 4 5 6 7 8 9 10 11
| <server> <id>docker-hub</id> <username>账号</username> <password>密码</password> <configuration> <email>邮箱</email> </configuration> </server>
|
以下这种方式无需编写Dockerfile,如需使用Dockerfile方式构建镜像,请参考官方文档:https://github.com/spotify/docker-maven-plugin#use-a-dockerfile
打开项目的 pom.xml
,在 build
-> plugins
下面添加:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.2.2</version> <configuration> <imageName>你dockerhub的用户名/${artifactId}:${version}</imageName> <baseImage>java</baseImage> <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint> <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}</directory> <include>${project.build.finalName}.jar</include> </resource> </resources>
<serverId>docker-hub</serverId> </configuration> </plugin>
|
然后用maven打包构建并推送就可以了
1
| mvn clean package docker:build -DpushImage
|