1.6. 出力定義
Build
CR では、イメージをプッシュする出力の場所を指定できます。出力場所として外部プライベートレジストリーを使用する場合は、イメージにアクセスするためのシークレットを指定する必要があります。出力イメージのアノテーションとラベルを指定することもできます。
注記
アノテーションまたはラベルを指定すると、出力イメージが 2 回プッシュされます。最初のプッシュはビルドストラテジーから行われ、2 番目のプッシュではイメージ設定を変更してアノテーションとラベルを追加します。
以下の例では、イメージがプッシュされるパブリックレジストリーを定義します。
apiVersion: shipwright.io/v1beta1 kind: Build metadata: name: s2i-nodejs-build spec: source: git: url: https://github.com/shipwright-io/sample-nodejs contextDir: source-build/ strategy: name: source-to-image kind: ClusterBuildStrategy paramValues: - name: builder-image value: docker.io/centos/nodejs-10-centos7 output: image: image-registry.openshift-image-registry.svc:5000/build-examples/nodejs-ex
以下の例では、イメージがプッシュされるプライベートレジストリーを定義します。
apiVersion: shipwright.io/v1beta1 kind: Build metadata: name: s2i-nodejs-build spec: source: git: url: https://github.com/shipwright-io/sample-nodejs contextDir: source-build/ strategy: name: source-to-image kind: ClusterBuildStrategy paramValues: - name: builder-image value: docker.io/centos/nodejs-10-centos7 output: image: us.icr.io/source-to-image-build/nodejs-ex pushSecret: icr-knbuild
以下の例では、イメージのアノテーションおよびラベルを定義します。
apiVersion: shipwright.io/v1beta1 kind: Build metadata: name: s2i-nodejs-build spec: source: git: url: https://github.com/shipwright-io/sample-nodejs contextDir: source-build/ strategy: name: source-to-image kind: ClusterBuildStrategy paramValues: - name: builder-image value: docker.io/centos/nodejs-10-centos7 output: image: us.icr.io/source-to-image-build/nodejs-ex pushSecret: icr-knbuild annotations: "org.opencontainers.image.source": "https://github.com/org/repo" "org.opencontainers.image.url": "https://my-company.com/images" labels: "maintainer": "team@my-company.com" "description": "This is my cool image"