プロジェクトの管理
プロジェクトを作成して使用する方法について説明します。
プロジェクトとは何ですか?
プロジェクトとは、アプリケーション、ジョブ、ビルドなどの Code Engine エンティティーをグループにまとめるものです。 プロジェクトの基盤は Kubernetes 名前空間です。 プロジェクトの名前は、IBM Cloud® リソース・グループ、ユーザー・アカウント、およびリージョン内で固有でなければなりません。 プロジェクトを使用することで、リソースを管理してエンティティーへのアクセスを提供できます。
プロジェクトは、以下の項目を提供します。
- エンティティー名のために固有の名前空間を提供します。
- プロジェクトのリソースへのアクセス (インバウンド・アクセス) を管理します。
- バッキング・サービス、レジストリー、およびリポジトリーへのアクセス (アウトバウンド・アクセス) を管理します。
- Transport Layer Service (TLS) 用の証明書が自動的に生成されます。
プロジェクトのアクセス制御を IAM で管理する方法について詳しくは、ユーザー・アクセスの管理を参照してください。
プロジェクトにはコストはかかりませんが、代わりにアプリ、ジョブ、および機能のフォルダーとして機能します。
アクセスできるプロジェクトを確認する方法
プロジェクトのリストは、 Code Engine コンソールで確認できます。
project list
コマンドを実行することもできます。
ibmcloud ce project list
出力例
Getting projects...
OK
Name ID Status Selected Tags Region Resource Group Age
myproj-eude 01234567-abcd-abcd-abcd-abcdabcd2222 active false eu-de default 27d
myproject 01234567-abcd-abcd-abcd-abcdabcd1111 active true us-south default 52d
プロジェクトの詳細を確認する方法
Code Engine コンソールで、 Code Engine 「プロジェクト」ページからプロジェクトの名前をクリックして、プロジェクトの詳細を表示できます。
コンソールから Code Engine 内のコンポーネント (アプリ、ジョブ、関数など)、またはそれらの関連エンティティー (アクセス、バインディング、サブスクリプションなど) を操作するときに、関連プロジェクトに関する詳細を表示できます。 特定の Code Engine エンティティーのページで、 「詳細」 をクリックして、関連付けられたプロジェクトの詳細を確認します。 このページを使用して、地域、CRN (クラウド・リソース名)、GUID (グローバル固有 ID)、ネットワーク・アドレス (パブリックおよびプライベート) などの情報を含む、関連プロジェクトの詳細を表示します。
また、project get
コマンドを実行してプロジェクトの詳細を表示することもできます。 PROJECT_NAME
は、プロジェクトの名前に置き換えてください。 プロジェクトが現在のコンテキストとして選択されている場合、このコマンドの出力には Code
Engine プロジェクト・リソースの制限と割り当て量の使用率に関する詳細が含まれます。 プロジェクトの制限について詳しくは、プロジェクトの割り当て量を参照してください。
ibmcloud ce project get --name PROJECT_NAME
出力例
Getting project 'myproject'...
OK
Name: myproject
ID: 01234567-abcd-abcd-abcd-abcdabcd1111
Status: active
Selected: true
Region: us-south
Resource Group: default
Service Binding Service ID: ServiceId-1234abcd-abcd-abcd-1111-1a2b3c4d5e6f
Age: 52d
Created: Fri, 15 Jan 2021 13:32:30 -0500
Updated: Fri, 15 Jan 2021 13:32:45 -0500
Quotas:
Category Used Limit
App revisions 33 100
Apps 10 100
Build runs 4 100
Builds 4 100
Configmaps 7 100
CPU 6.15 64
Ephemeral storage 5415750Ki 256G
Instances (active) 6 250
Instances (total) 9 2500
Job runs 4 100
Jobs 3 100
Memory 26400M 256G
Secrets 21 100
Subscriptions (cron) 1 100
Subscriptions (IBM Cloud Object Storage) 0 100
自分のプロジェクトを他のユーザーが使用できるようにポリシーを設定する方法
ユーザー・アクセスの管理の情報を参照して、自分の Code Engine プロジェクトを他のユーザーが使用できるように IAM ポリシーを設定する方法について確認してください。
考慮すべきプロジェクト制限はありますか?
リージョンごとに作成できるプロジェクトの最大数は 20 です。 プロジェクトの制限について詳しくは、プロジェクトの割り当て量を参照してください。
プロジェクトの作成
プロジェクトの作成は、コンソールでも CLI でも行えます。
コンソールからのプロジェクトの作成
- Code Engine コンソールの「プロジェクト」ページから、 作成をクリックします。 あるいは、 Code Engine コンソールの高速パスを使用して Code Engine アプリケーション、ジョブ、または機能を作成するときに、プロジェクトを作成することもできます。 Code Engine コンソールで、 「開始 (Let 's go)」 を選択し、「作成の開始 (Start creating)」ページで 「プロジェクトの作成 (Create project)」 をクリックします。
- プロジェクトのデプロイ先ロケーションを選択します。
- プロジェクトの名前を入力します。 この名前は、指定したロケーションのすべてのプロジェクトで固有でなければなりません。
- プロジェクトを作成するリソース・グループを選択します。
- 「作成」 をクリックします。
プロジェクト・リソースのサービス・インスタンスを表示するには、 IBM Cloud ダッシュボード に移動し、 Code Engine でプロジェクト名を見つけます。
CLI でのプロジェクトの作成
プロジェクトを作成すると、そのプロジェクトが現行コンテキストとして自動的に選択されます。 作成されたプロジェクトが自動的に選択されないようにするには、--no-select
オプションを使用します。
-
Code Engine CLI をインストールします。 プロジェクトに使用するリソース・グループを、ターゲットとして設定します。
-
project create
コマンドでプロジェクトを作成します。 リージョンで固有のプロジェクト名を使用してください。ibmcloud ce project create --name PROJECT_NAME
出力例
Creating project 'myproject'... OK
-
新しいプロジェクトが作成されたことを、
project get
コマンドで確認します。ibmcloud ce project get --name PROJECT_NAME
出力例
Getting project 'myproject'... OK Name: myproject ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Status: active Selected: true Region: us-south Resource Group: default Service Binding Service ID: ServiceId-1234abcd-abcd-abcd-1111-1a2b3c4d5e6f Age: 52d Created: Fri, 15 Jan 2021 13:32:30 -0500 Updated: Fri, 15 Jan 2021 13:32:45 -0500 Quotas: Category Used Limit App revisions 1 100 Apps 1 100 Build runs 0 100 Builds 0 100 Configmaps 2 100 CPU 1.025 64 Ephemeral storage 902625Ki 256G Instances (active) 1 250 Instances (total) 2 2500 Job runs 1 100 Jobs 1 100 Memory 4400M 256G Secrets 5 100 Subscriptions (cron) 0 100 Subscriptions (IBM Cloud Object Storage) 0 100
すべてのプロジェクトをリストすることもできます。この出力には、選択されたプロジェクトがどれであるかが示されます。 以下の例では、
myproject
が、現行コンテキストとして選択されているプロジェクトです。ibmcloud ce project list
出力例
Getting projects... OK Name ID Status Selected Tags Region Resource Group Age myproj-eude 01234567-abcd-abcd-abcd-abcdabcd2222 active false eu-de default 27d myproject 01234567-abcd-abcd-abcd-abcdabcd1111 active true us-south default 52d
プロジェクトの使用
プロジェクトを作成したら、Code Engine のコンソールでも CLI でもそのプロジェクトを使用することができます。
コンソールからのプロジェクトの使用
プロジェクトを操作するには、 Code Engine 「プロジェクト」ページ に移動し、リストからプロジェクトの名前をクリックします。
Code Engine のコンポーネントを使用するためには、プロジェクトのコンテキストでコンポーネントを使用する必要があります。 プロジェクトのコンテキストから、 アプリケーション、 ジョブ、または 関数 などの Code Engine コンポーネントを作成して操作することができます。 現在作業しているプロジェクトを調べるには、Code Engine コンポーネントの階層リンクを参照してください。
コンソールから Code Engine 内のコンポーネント (アプリ、ジョブ、関数など)、またはそれらの関連エンティティー (アクセス、バインディング、サブスクリプションなど) を操作するときに、関連プロジェクトに関する詳細を表示できます。 特定の Code Engine エンティティーのページで、 「詳細」 をクリックして、関連付けられたプロジェクトの詳細を確認します。 このページを使用して、地域、CRN (クラウド・リソース名)、GUID (グローバル固有 ID)、ネットワーク・アドレス (パブリックおよびプライベート) などの情報を含む、関連プロジェクトの詳細を表示します。
CLI でのプロジェクトの使用
CLI でプロジェクトを扱うときには、そのプロジェクトが現行コンテキストとして選択されている必要があります。 プロジェクトが作成されると、--no-select
オプションを指定した場合を除き、そのプロジェクトが現行コンテキストとして自動的に選択されます。 現在ターゲットになっていないプロジェクトを選択する場合は、project select
コマンドを使用します。
ibmcloud ce project select --name PROJECT_NAME
出力例
Selecting project 'myproject'...
選択したプロジェクトのコンテキスト内から、 Code Engine コンポーネント ( アプリケーション、 ジョブ、または 機能 など) を操作できます。
現行コンテキストとして選択されているプロジェクトの確認
現行コンテキストとして選択されているプロジェクトについての詳細は、project current
コマンドを使用することによって確認できます。
プロジェクトの削除
不要になったプロジェクトは削除できます。 プロジェクトを削除すると、そのプロジェクトに含まれているすべてのコンポーネントが削除されます。 コンソールも CLI も使用できます。
コンソールまたは CLI を使用してプロジェクトを削除した場合、そのプロジェクトは論理削除されているので、復元することができます。 プロジェクトの復元は 7 日以内に行ってください。そうしないと永久に削除されます。 プロジェクトの復元について詳しくは、削除されたプロジェクトの復元を参照してください。 プロジェクトを永久に削除するには、プロジェクトの永久削除を参照してください。
プロジェクトを削除した場合、永久削除されていないプロジェクトは、リージョンごとに許可されるプロジェクトの最大合計数である 20 にカウントされます。
プロジェクト名はリージョン内で固有でなければなりません。 プロジェクトを論理削除した場合 (つまり、回収有りでプロジェクトを削除した場合)、そのプロジェクト名は、プロジェクトを永久に削除するまで再利用できません。
コンソールからのプロジェクトの削除
コンソールからプロジェクトを削除するには、 Code Engine 「プロジェクト」ページに移動し、削除するプロジェクトを選択して、削除アイコンをクリックします。 特定のプロジェクトを開いた状態で、アクション・メニューからそのプロジェクトを削除することもできます。
コンソールからプロジェクトを削除すると、そのプロジェクトは論理削除され、7 日間は復元可能です。これを過ぎると永久に削除されます。 プロジェクトの再利用は、まだ復元できる削除済みプロジェクトを表します。 Code Engine 「プロジェクト」ページで、プロジェクトの再利用数が表示されます。 restorable projects
をクリックして 「プロジェクトの再利用」 ページを開き、復元または完全に削除できるプロジェクトのリストを表示します。
CLI でのプロジェクトの削除
CLI でプロジェクトを削除するには、project delete
コマンドを使用します。 必要に応じて、-f
オプションを使用して、確認なしにプロジェクトを強制的に削除することもできます。 プロジェクトが一時的に削除された後、 reclamation
コマンドを使用してこのプロジェクトを管理できます。 以下の例では、myproject
プロジェクトが論理削除されます。
ibmcloud ce project delete --name myproject -f
出力例
Deleting project 'myproject'...
OK
復元できないようにプロジェクトを永久に削除するには、--hard
オプションを project delete
コマンドに指定します。 必要に応じて、-f
オプションを使用して、確認なしにプロジェクトを強制的に削除することもできます。
以下の例では、myproject1
プロジェクトが永久に削除されます。
ibmcloud ce project delete --name myproject1 --hard -f
出力例
Deleting project 'myproject1'...
OK
project delete
コマンドで--hard
オプションを指定すると、プロジェクトは即時に削除され、IBM Cloud リソースの再利用を使用して復元することはできません。 --hard
オプションを指定しない場合、7
日以内であれば reclamation restore
コマンドを使用してプロジェクトを復元できます。
以前に (--hard
オプションを指定せずに) プロジェクトをソフト削除した場合は、--hard
オプションを指定してproject delete
コマンドを使用することによってのみ、後続の削除を指定できます。 この操作でプロジェクトは完全に削除されて復元できなくなります。
削除されたプロジェクトの復元
コンソールを使用して削除済みプロジェクトを復元する
プロジェクトを論理削除した後、それをコンソールから復元するか永久に削除することができます。 プロジェクトの復元は 7 日以内に行ってください。そうしないと永久に削除されます。
- Code Engine コンソールの「プロジェクト」ページで、地域内のプロジェクトのリストを表示します。 プロジェクト回収の数が表示されます。
project reclamations
のリンクをクリックします。- **「プロジェクトの回収 (Project reclamations)」**ページで、プロジェクトを復元できる残り日数を確認できます。
- プロジェクトを復元するには、復元アイコンをクリックします。
- プロジェクトを永久に削除するには、削除アイコンをクリックします。
**「プロジェクトの回収 (Project reclamations)」**ページにリストされているプロジェクトに対して何もアクションを実行しない場合は、7 日後に自動的に永久削除されます。
CLI を使用して削除済みプロジェクトを復元する
ソフト削除されたプロジェクトは、**reclamation
**コマンドを使用して管理できます。reclamation
コマンド。
-
論理削除されたプロジェクトを、
reclamation list
コマンドを使用して検出します。ibmcloud ce reclamation list
出力例
Getting project reclamations... OK Name ID Reclamation ID Status Region Resource Group Age Time to Hard Deletion myproject def218c5-abcd-abcd-abcd-97854c288d76 48e3d7a2-abcd-abcd-abcd-99db7152b8fe soft deleted us-south default 40h 6d23h myproject2 01f0bc66-abcd-abcd-abcd-3ef7e99f6f69 af2cd017-abcd-abcd-abcd-d32e2bb79136 soft deleted jp-osa default 8m58s 2d11h
-
論理削除されたプロジェクトを、
reclamation restore
コマンドを使用してアクティブ状態に復元します。 以下の例では、myproject2
プロジェクトとそのコンポーネントを復元しています。 復元するプロジェクトの正しいリージョンをターゲットとしていることを確認してください。ibmcloud ce reclamation restore --name myproject
出力例
Restoring project 'myproject'... OK
別の方法として、論理削除されたプロジェクトを project restore
コマンドを使用してアクティブ状態に復元することもできます。
プロジェクトの永久削除
コンソールを使用してプロジェクトを永久に削除する
論理削除したプロジェクト (つまり、回収有りで削除したプロジェクト) は、コンソールから復元するか永久に削除することができます。 永久に削除したプロジェクトは復元できません。
- Code Engine コンソールの「プロジェクト」ページで、地域内のプロジェクトのリストを表示します。 プロジェクト回収の数が表示されます。
project reclamations
のリンクをクリックします。- **「プロジェクトの回収 (Project reclamations)」**ページで、プロジェクトを復元できる残り日数を確認できます。 プロジェクトを永久に削除するには、
Delete
をクリックします。
**「プロジェクトの回収 (Project reclamations)」**ページにリストされている削除済みプロジェクトに対して何もアクションを実行しない場合は、7 日後に自動的に永久削除されます。
CLI を使用してプロジェクトを永久に削除する
論理削除されたプロジェクトは、reclamation delete
コマンドを使用して永久に削除できます。 このコマンドで --force
オプションを使用すると、確認なしで削除が強制されます。
ibmcloud ce reclamation delete -n myproject --f
出力例
Hard deleting project 'myproject'...
OK
プロジェクトが論理削除されていない場合、プロジェクトを永久に削除して復元不能にするには、--hard
オプションを project delete
コマンドと共に使用して、プロジェクトを即時かつ永久に削除することを指定します。 例えば、myproject3
プロジェクトを永久に削除するには、次のようにします。
ibmcloud ce project delete --name myproject3 --hard
出力例
Deleting project 'myproject3'...
OK