【问题标题】:fabric8 docker-maven-plugin: include additional tags on buildfabric8 docker-maven-plugin:在构建时包含附加标签
【发布时间】:2017-11-17 04:49:39
【问题描述】:

我在 pom.xml 中配置了 fabric8 docker-maven-plugin,如下所示:

  <build>
    ...
    <plugins>
      ...
      <plugin>
        <groupId>io.fabric8</groupId>
        <artifactId>docker-maven-plugin</artifactId>
        <version>${docker.plugin.version}</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>build</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <images>
            <image>
              <name>${docker.image.prefix}/${project.artifactId}:%l</name>
              <build>
                <dockerFile>Dockerfile</dockerFile>
                <assembly>
                  <descriptorRef>artifact</descriptorRef>
                </assembly>
              </build>
            </image>
          </images>
        </configuration>
      </plugin>
      ...
    </plugins>
    ...
  </build>

我使用%l 占位符,如果版本包含-SNAPSHOT,则使用latest 标签标记图像,否则使用pom 版本。 从 CI 构建时,我想在我的图像中包含一些额外的标签(可能不止一个)(例如内部版本号/分支名称),但我想保留 %l 占位符行为。 我认为应该可以从命令行使用 maven 属性,但我无法从插件文档中弄清楚 (https://dmp.fabric8.io/)

如何在执行 docker:build 目标时包含额外的标签?

【问题讨论】:

    标签: maven docker docker-maven-plugin


    【解决方案1】:

    你可以使用&lt;tags&gt;标签:

    https://dmp.fabric8.io/#build-configuration

    <properties>
      ...
      <!-- set default -->
      <docker.image-tag>${project.version}</docker.image-tag>
      ...
    </properties>
    
    
    <image>
      ...
      <name>repo/something/%a:%l</name>
      <build>
        ...
        <tags>
          <tag>${docker.image-tag}</tag>
        </tags>
        ...
      </build>
      ...
    </image>
    

    这将使用%l 行为和自定义集${docker.image-tag} 标记您的图像。

    mvn docker:build -Ddocker.image-tag=mytag
    

    【讨论】:

    • 感谢乔治的帮助。我只想在从 CI 构建时包含标签。是否可以通过 Maven 命令行包含标签?类似mvn docker:build -Ddocker.plugin.tag=stable
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-28
    • 1970-01-01
    • 2020-01-15
    • 2018-08-22
    • 1970-01-01
    • 1970-01-01
    • 2021-08-19
    相关资源
    最近更新 更多