多いほど良い:BuildxとArtifactoryでマルチアーキテクチャ码头工人マニフェストを

“一度作成すれば,どこにでもデプロイできる”というクラウドネイティブの約束事は,ほぼ満たされたと言えるでしょう。Dockerにより,あらゆる環境に対応したアプリケーションやサービスを構築し,実行時に構成の設定が可能になりました。

……………………………………オペレーティングシステムやアプリケーションは特定のアーキテクチャタイプで実行するようにコンパイルする必要があります。AMD64プロセッサ用にコンパイルされたソフトウェアは手臂ベースのマシンでは動作しませんし,Linux用に作られたソフトウェアはWindowsでは動作しません。

码头工人はコンテナアプリケーションがマルチCPUアーキテクチャをサポートするというこのニーズに対してマルチアーキテクチャイメージで対応します。サポートが必要なアーキテクチャごとにイメージを構築し,そのセットを码头工人マニフェストリストにバンドルすることができます。。Docker。

ArtifactoryのDockerにマルチアーキテクチャイメージを構築し,他の船坞坞坞坞坞。★★★★★★★★★★★SDLC

マルチアーキテクチャイメージ

ここではLinux操作系统下で2つのプロセッサ・アーキテクチャ上で動作するアプリケーションを前提にしています。

  1. x86-64 Linux
  2. Aws ec2, arm,,,,

(1)、(1)、(2)、(2)、(3)、(3)amd64arm64

Buildx

まず始めに,必要なアーキテクチャに応じてサンプルイメージを構築するようにDockerFileを設定する必要があります。

ARG ARCH= FROM ${ARCH}debian: bash -slim RUN apt-get update \ && apt-get install - y curl \ && rm -rf /var/lib/apt/lists/* ENTRYPOINT [" curl "]

中文:DockerFile码头工人建造【中文】——build-argオプションで引数を設定することで目的のアーキテクチャごとに単一のイメージを構築することができます。その後,それらをマルチアーキテクチャイメージにバンドルするために,(码头工人清单

中文:中文:中文:中文:中文:中文:中文:Docker CLIbuildxを使うことで,単一の码头工人CLIコマンドラインからマルチアーキテクチャイメージを作成し,Artifactoryの码头工人レジストリにプッシュすることができます。

$ docker buildx build \——push \——platform linux/amd64,linux/arm64 \——output=type=image,push=true,注册表。\——tag myartifactory/docker-local /multiarch-image:tag。

MacやWindowsで码头工人桌面を使用している場合,buildxは含まれています。LinuxGitHub哇,哇,哇。

人工智能,

………multiarch-image人造的docker-local> > > > > > > > >

マニフェストリスト

Dockerlist.manifest.json):“”。“ファットマニフェスト”とも呼ばれ,セット内の码头工人イメージ,各イメージがどのアーキテクチャ(OSとプロセッサの組み合わせ)上で動作するかを特定します。

multiarch-imageアプリケーションが実行された場合,码头工人CLIはまずマニフェストリストを取得し,それを使用して対象のOSやアーキテクチャに合わせて,どのイメージを取得してデプロイするのかを選択します。

アーキテクチャイメージ

サポートされているアーキテクチャのイメージにはそれぞれ対応するタグがあり,Artifactoryではパブリッシュタグとアーキテクチャ名を組み合わせて作成しています。ここではパブリッシュタグに“标签”を使っていますので,アーキテクチャイメージのタグはtag-linux-amd64tag-linux-arm64? ? ? ?

マルチアーキテクチャイメージのプロモート

マルチアーキテクチャイメージがArtifactoryの码头工人リポジトリにあり,テストのパス後,他の码头工人リポジトリと同様,イメージを別の码头工人リポジトリにプロモートさせることができます。

このJFrog CLIコマンドはdocker-local

docker-local docker-target

。プロモーションでタグの名前を変更することを選択した場合,マルチアーキテクチャイメージ内の各アーキテクチャごとに名前が変更されます。

docker-local docker-target

【翻译

マルチアーキテクチャイメージをSDLCで運用する場合,サポートされる各アーキテクチャをターゲットプラットフォーム上で個別に検証する必要があるため,テストや検証がより複雑になる可能性があります。

しかし,Artifactoryのマルチアーキテクチャイメージのサポートにより,ベストプラクティスのワークフローが維持されます。。

中文:非常非常非常非常非常非常非常非常非常非常非常非常非常非常非常非常非常。人工的JFrog(小青蛙★★★★★★★★★★