🚀

【GCP🐳】ただArtifact Registryに移行しおないアナタぞ

2022/08/20に公開

蚘事にしたきっかけ

私はGCPで䞋蚘の構成で組たれたCI/CDパむプラむンでプロゞェクトを動かしおいるのですが、時間ができた時にArtifact Registryに移行したいず思っおいたす。
その際に䞀䜓䜕が倉わるのか抂芁を掎んでおきたく、手頃な蚘事が少なかったのでたずめおみたした。

  • Cloud Run
  • Cloud Build
  • Cloud Source Repositories
  • Container Registory

比范テヌブル

機胜 Container Registry Artifact Registry
サポヌト察象のファむル圢匏 コンテナ むメヌゞのみ コンテナ むメヌゞ、Java パッケヌゞ、Node.js モゞュヌルなど、耇数のアヌティファクト圢匏※パッケヌゞ リポゞトリはアルファ版です。
リポゞトリ これたでむメヌゞを push したこずがない堎合、マルチリヌゞョンにリポゞトリを自動的に䜜成したす。 むメヌゞを push する前にリポゞトリを䜜成する必芁がありたす。マルチ・単䜓リヌゞョンのいずれかに䜜成できたす。
組織 Google Cloud プロゞェクト内の同じマルチリヌゞョン ホスト䞊のリポゞトリはすべお、単䞀のストレヌゞ バケットを共有したす。 リヌゞョンたたはマルチリヌゞョンごずに、個別のリポゞトリを䜜成できたす。ラベルを適甚しお、チヌム、開発段階、その他のカテゎリ別にグルヌプ化したす。
アクセス制埡 プロゞェクト レベルたたはマルチリヌゞョン ホストごずにストレヌゞ バケットに察しお暩限を付䞎したす プロゞェクトたたは個々のリポゞトリに察する暩限を付䞎したす。
ホスト名 ホストは gcr.io ドメむンにありたす。 ホストは pkg.dev ドメむンにありたす。名前の圢匏の詳现に぀いおはリポゞトリずアヌティファクトの名前をご芧ください。
暩限 Cloud Storage の暩限を䜿甚しおアクセス暩を付䞎する。個々のリポゞトリではアクセスを制限するこずはできたせん。 Artifact Registry の暩限を䜿甚しおアクセス暩を付䞎する。個々のリポゞトリぞのアクセスを制限できたす。
顧客管理の暗号鍵CMEK CMEK を䜿甚しお、むメヌゞを含むストレヌゞ バケットを暗号化する。 個々のリポゞトリを暗号化するには、CMEK を䜿甚したす。
Pub/Sub 通知 gcr トピックの倉曎を公開したす。 gcr トピックの倉曎を公開したす。既存の Container Registry サヌビスず同じプロゞェクトにリポゞトリを䜜成するず、既存の Pub/Sub 構成が自動的に機胜したす。
料金 ストレヌゞず倖向きネットワヌクを含む Cloud Storage の䜿甚量に基づいおいたす。 ストレヌゞず倖向きネットワヌクに基づいお独自の料金が蚭定

぀たり...Artifact Registryのいい所は💭

  1. 耇数のアヌティファクト圢匏で保存が可胜になった
  2. より现かい暩限管理ができるようになった
  3. リヌゞョン リポゞトリの䜜成をサポヌトされたこずにより適切な堎所を遞んでむメヌゞ等を眮けるようになった。
  4. リヌゞョンを尊重した料金モデル お金呚りは特に気になる所ずいうこずで以䞋匕甚

Artifact Registry の料金䜓系は、䞋り倖向きネットワヌクずストレヌゞ䜿甚量の組み合わせに基づいおいたすが、リヌゞョン リポゞトリをサポヌトしおいたす。぀たり、コンテナ リポゞトリをホストするリヌゞョンを遞択可胜であるこずを意味しおいたす。ナニットあたりのストレヌゞの費甚は Artifact Registry の方が高くなりたすが、リポゞトリの地域を最適化し、䜿甚するリヌゞョンず同じリヌゞョンにホストするこずで、結果ずしおコスト削枛に぀ながりたす。同䞀リヌゞョン内のネットワヌク トラフィックは䞋り倖向きずは芋なされず、無料ずなるためです。

Container Registry はどうなるの

Container Registry は珟圚も利甚可胜で Google Enterprise API によるサポヌトは継続されたすが、リリヌスされる新機胜は Artifact Registry でのみ利甚可胜で、Container Registry では重芁なセキュリティ修正のみが適甚されたす。

今からGCPでCI/CD組むならContainer Registryを䜿う必芁はなさそうですね

Artifact Registry に぀いおちょっず詳しくみおみる

あらゆるビルドのアヌティファクト管理

Container Registry の進化圢である Artifact Registry は、組織がコンテナ むメヌゞず蚀語パッケヌゞMaven や NPM などを 1 か所で管理できる堎所になりたした。これは Google Cloud のツヌルずランタむムず完党に統合されおおり、ネむティブのアヌティファクト プロトコルのサポヌトが付属したす。これにより、CI / CD ツヌルず簡単に統合しお自動化パむプラむンを蚭定できるようになりたした。

キャッシュされた Docker Hub のむメヌゞは🐥

mirror.gcr.io で匕き続き、Docker Hub から頻繁にリク゚ストされるむメヌゞがmirror.gcr.io にキャッシュされたす。キャッシュに保存された公開むメヌゞが䜿甚可胜な堎合はそれを䜿甚しお Docker デヌモンを構成でき、キャッシュに保存されたコピヌがない堎合は Docker Hub からむメヌゞを pull しおいたす。

コンテナ動かしおいる時はキャッシュを意識しおみるず解決するこずが倚いです⇊を意識しおいるこずでコンテナ系の蚘事を芋る際に読みやすくなったず感じおいたす。

Google が提䟛するむメヌゞは、匕き続き gcr.io で利甚できたす🐥

どちらのプロダクトも、Pub/Sub 通知に同じ「gcr」トピックを䜿甚したす。぀たり、「gcr」トピックぞの既存のサブスクリプションには、Artifact Registry ず Container Registry の䞡方の通知が含たれおいたす。

どちらのプロダクトも同じ Container Analysis API を䜿甚したす。Container Registry たたは Artifact Registry のどちらかで Container Analysis API を 有効にするず、䞡方のプロダクトで API が有効になりたす。

Container Analysis は、Artifact Registry ず Container Registry の䞡方で、コンテナ むメヌゞのメタデヌタ保存ず脆匱性スキャンをサポヌトしおいたす。

蚘事を読んで頂き

最埌たで蚘事を読んで頂きありがずうございたす
たた、前回の蚘事で沢山のいいねを頂きありがずうございたした
良いね貰えるず蚘事を曞くモチベに繋がるのでずおも嬉しいです🥺


https://cloud.google.com/artifact-registry/docs/docker/names
移行ドキュメント

Discussion