docker-maven-plugin 打包镜像,命令解释_08

本文详细介绍了如何使用docker-maven-plugin插件在Maven项目中自动化构建Docker镜像,包括不带推送和带推送镜像至私有仓库的配置方法,以及Maven全局配置文件settings.xml的相应调整。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker-maven-plugin 打包镜像,命令解释_08
  • 1、不带推送命令:
    • <plugin>
      • <groupId>com.spotify</groupId>
      • <artifactId>docker-maven-plugin</artifactId>
      • <version>0.4.13</version>
    • <!-- executions 将插件绑定在指定的phase执行-->
      • <executions>
        • <execution>
          • <id>build-image</id>
          • <phase>package</phase>
          • <!--只需将插件的goal绑定在某个phase,添加后,执行mvn package 时,插件自动为我们构建Docker 镜像 -->
          • <goals>
            • <goal>build</goal>
          • </goals>
        • </execution>
      • </executions>
      • <configuration>
      • //指定镜像名称
        • <imageName>springboot</imageName>
          • //指定标签名称
        • <imageTags>
          • <imageTag>1.0.1</imageTag>
        • </imageTags>
          • // 为true,则表示推送镜像
        • <pushImage>true</pushImage>-->
          • // Dockerfile 地址
        • <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
          • // Docker 地址
        • <dockerHost>http://111.***.***.99:2375</dockerHost>
        • <resources>
          • <resource>
            • <targetPath>/</targetPath>
            • <directory>${project.build.directory}</directory>
            • <include>${project.build.finalName}.jar</include>
          • </resource>
        • </resources>
        • <!--如需重复构建相同标签名称的镜像,可将forceTags设为true,这样就会覆盖构建相同标签的镜像。-->
        • <forceTags>true</forceTags>
      • </configuration>
    • </plugin>
  • 2、带推送
    • <plugin>
      • <groupId>com.spotify</groupId>
      • <artifactId>docker-maven-plugin</artifactId>
      • <version>0.4.13</version>
      • <!-- executions 将插件绑定在指定的phase执行-->
      • <executions>
        • <execution>
        • <id>build-image</id>
        • <phase>package</phase>
        • <!--只需将插件的goal绑定在某个phase,添加后,执行mvn package 时,插件自动为我们构建Docker 镜像 -->
          • <goals>
            • <goal>build</goal>
          • </goals>
        • </execution>
      • </executions>
      • <configuration>
        • <imageName>springboot</imageName>
          • <!--可推送镜像到私有仓库,只需要将imageName指定成类似于如下的形式即可:0.0.4 为标签名称,也可以通过imagTag设置 -->
        • <imageName>localhost:5000/{仓库名称}/discovery:0.0.4</imageName>
        • <imageTags>
          • <imageTag>1.0.1</imageTag>
        • </imageTags>
          • // Dockerfile 地址
        • <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
          • // Docker 地址
        • <dockerHost>http://111.***.***.99:2375</dockerHost>
        • <resources>
          • <resource>
            • <targetPath>/</targetPath>
            • <directory>${project.build.directory}</directory>
            • <include>${project.build.finalName}.jar</include>
          • </resource>
        • </resources>
          • <!-- 与maven配置文件settings.xml中配置的server.id一致,用于推送镜像 -->
        • <serverId>springboot</serverId>
        • <registryUrl>${docker.repostory}</registryUrl>
        • <pushImage>true</pushImage>-->
      • </configuration>
    • </plugin>
  • 如果要推送,要修改 Maven的全局配置文件setttings.xml,在其中添加以下内容
    • <server>
      • <id>docker-aliyun</id>
      • <username>你的DockerHub用户名</username>
      • <password>你的DockerHub密码</password>
      • <configuration>
      • <email>你的DockerHub邮箱</email>
      • </configuration>
    • </server>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值