LoginSignup
4

More than 3 years have passed since last update.

posted at

updated at

Oracle Cloud Infrastructure Registry (OCIR)を使ってみよう

オンプレミスでDocker Registryを構築する手順を別の記事に書きましたが、運用を考えるとクラウドで提供されているサービスを利用した方が楽ですね。この記事ではOracle Cloud Infrastructure (OCI)で提供されている可用性の高いプライベート・コンテナ・レジストリ・サービスであるOracle Cloud Infrastructure Registry (OCIR)を使う手順をまとめています。

事前準備

まずは、OCI上にOCIRの管理ユーザーなど必要なリソースを作成していきます。

ブラウザで、Oracle Cloud Infrastructureのコンソールにアクセスしてください。

OCIコンソールでメニューを展開し、[Identity] - [Users]を選択します。

OCIコンソール Identity - Users

[Create User]を選択し、OCIRの管理ユーザーとしてregistry-managerというユーザーを作成します。

Create User

ユーザーが作成されるとUsersに表示されるので、作成された[registry-manager]を選択し、[Auth Tokens]で[Generate Token]を選択します。

Auth Tokens

DESCRIPTIONにregistry-tokenを入力し、作成されたトークン(スクリーンショットでは 4(vmAFE):(Ex8:uAIAZc )をメモしておきます。

Generate Token

Generated Token

次に、メニューで[Identity] - [Groups]を選択し、[Create Group]で管理グループとしてregistry-managersというグループを作成します。

Create Group

グループが作成されるとGroupsに表示されるので、作成された[registry-managers]を選択し、[Add User to Group]を選択します。USESRで[registry-manager]を選択し、グループにユーザーを追加します。

Add User to Group

最後に、メニューで[Identity] - [Policies]を選択し、[Create Policy]でregistry-managers-policyというポリシーを作成します。STATEMENTには以下の文を記入します。

Allow group registry-managers to manage repos in tenancy

Create Policy

これで、registry-managerというユーザーがOCIRにアクセスできるようになりました。

OCIRを使ってみよう

docker loginでOCIRにログインします。OCIRのサーバーは <リージョン・コード>.ocir.iod 、ユーザー名は <テナンシー名>/<ユーザー名>、パスワードは事前準備で作成したトークンです。ご自身の環境に合わせて、下記の表から適切なリージョン・コードを見つけてください。

リージョン・コード リージョン名
fra Frankfurt
iad Ashburn
lhr London
phx Phoenix

下記の例ではAshburnでホストされているshakiyamというテナンシーのOCIRにログインしています。

echo '4(vmAFE):(Ex8:uAIAZc' | docker login iad.ocir.io -u shakiyam/registry-manager --password-stdin

Docker Hubからイメージを手に入れ、自分のOCIR上にタグ付けします。タグ付けの形式は、<リージョン・コード>.ocir.io/<テナンシー名>/<リポジトリ名(オプション)>/<イメージ名>:<タグ>です。

docker image pull hello-world:latest
docker image tag hello-world:latest iad.ocir.io/shakiyam/hello-world:latest

タグ付けしたイメージをpushします。

docker push iad.ocir.io/shakiyam/hello-world:latest

OCIコンソールでメニューを展開し、[Developer Services] - [Registry]を選択します。

Registry

イメージがpushできていることが確認できます。

参考

この記事では管理用のユーザーしか作成しませんでしたが、OCIRのリポジトリでユーザーが実行できる操作はきめ細かく制御できます。詳細はOCIRのマニュアルをご参照下さい。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
4