プロジェクトの作成
プロジェクトリソースとインフラストラクチャーをコード・デプロイメントとして定義および管理する成果物の集合。 では、カタログからデプロイ可能なアーキテクチャを追加し、その構成を編集できます。 プロジェクトから構成をデプロイすると、デプロイした構成に基づいてリソースがグループ化されます。
開始前に
リソースはユーザーのプロジェクトアカウント内に作成されます。 プロジェクトを作成する権限と、アカウント内でプロジェクトツールリソースを作成する権限が必要です。 以下のアクセス権があることを確認してください:
- IBM Cloud プロジェクトサービスにおける編集者の役割。
- IBM Cloud® Schematics サービスにおける編集者および管理者ロール
- プロジェクトのリソースグループにおけるビューアーの役割
アクセスと権限の詳細については、 「プロジェクトへのユーザーアクセス権の割り当て」 を参照してください。
プロジェクトにユーザーを追加する
プロジェクトへのアクセスは、 IBM Cloud (IAM)によって制御されます。 Identity and Access Management プロジェクトにユーザーを追加するには、プロジェクトインスタンスで「閲覧者」ロール以上の権限を付与します。 プロジェクトへのアクセス権の割り当てに関する詳細については、 「プロジェクトへのユーザーアクセス権の割り当て」 を参照してください。
コンソールを使用してプロジェクトを作成する
プロジェクトを作成するには、 ナビゲーションメニューアイコン から プロジェクト を 選択するか、 カタログ 内のデプロイ可能なアーキテクチャから選択します。
プロジェクトはプロジェクトAPI を使用して作成することもできます。
コンソールを使用してプロジェクトにデプロイ可能なアーキテクチャを追加する
プロジェクトに追加するデプロイ可能なアーキテクチャは、プロジェクトUI内で構成として表示されます。 プロジェクトにデプロイ可能なアーキテクチャを追加した後、デプロイ前に構成を編集できます。 プロジェクトにデプロイ可能なアーキテクチャを追加するには、いくつかの方法があります。
プロジェクトダッシュボードからプロジェクトにデプロイ可能なアーキテクチャを追加するには、次の手順を完了してください:
- プロジェクトダッシュボードから、[設定]タブを選択します。
- 「作成」 をクリックします。
- カタログからデプロイ可能なアーキテクチャを選択してください。
- 登録して作成 をクリックする。
カタログから直接プロジェクトにデプロイ可能なアーキテクチャを追加することもできます:
- IBM Cloud カタログに移動します。
- デプロイ可能なアーキテクチャを選択してください。
- カタログリストから、新規プロジェクトを作成するか、既存のプロジェクトに追加することができます。
- 登録して作成 をクリックする。
プロジェクトにおける展開可能なアーキテクチャのカスタマイズ
デプロイ可能なアーキテクチャによっては、カタログからプロジェクトに追加する際にカスタマイズできる場合があります。 以下のようなオプションがある:
- 特定のユースケース向けにソリューションを拡張するため、オプションのデプロイ可能なアーキテクチャを追加する。
- あるアーキテクチャを別のアーキテクチャと交換する。 例えば、複数のデータベースオプションが提供されている場合、使用したいものを選択できます。
- プロジェクト内の既存のアーキテクチャ構成を選択し、追加するアーキテクチャで再利用してください。 これにより、コストを削減し、同じデプロイメントを複数のアーキテクチャで再利用できます。
カタログリストの「このアーキテクチャを拡張」セクションで、構成およびデプロイの前にアーキテクチャを調整するには 「カスタマイズ」 をクリックしてください。 デプロイ可能なアーキテクチャのカタログ一覧で 「カスタマイズ」 が利用できない場合でも、 プロジェクト内で他のデプロイ可能なアーキテクチャを積み重ねることで、アーキテクチャを構成しカスタマイズできます。
選択を行い、デプロイ可能なアーキテクチャをプロジェクトに追加した後、設定 タブから オプション アイコン > アーキテクチャをカスタマイズする を選択することで、さらにカスタマイズすることができます。 そこから、他の互換性のあるデプロイ可能なアーキテクチャを追加して、ソリューションをさらにカスタマイズできます。
IBM Cloud Projects サービス外でプロジェクト情報をバックアップするには、プロジェクトをエクスポートできます。 詳細については、 Project JSON をご覧ください。
プロジェクトから デ プロイ可能なアーキテクチャのリソースをデプロイする準備が整ったら、デプロイ可能なアーキテクチャの設定とデプロイの手順を確認してください。
CLIを使ってプロジェクトを作成する
CLIを使用してプロジェクトを作成するには、次の ibmcloud project create コマンドを実行します:
ibmcloud project create [--definition DEFINITION | --definition-name DEFINITION-NAME --definition-destroy-on-delete=DEFINITION-DESTROY-ON-DELETE --definition-description DEFINITION-DESCRIPTION --definition-auto-deploy=DEFINITION-AUTO-DEPLOY --definition-monitoring-enabled=DEFINITION-MONITORING-ENABLED] --location LOCATION --resource-group RESOURCE-GROUP [--configs CONFIGS] [--environments ENVIRONMENTS]
コマンドの例とコマンドパラメータの詳細については、を ibmcloud project create 参照してください。
CLIを使用してプロジェクトにデプロイ可能なアーキテクチャを追加する
CLIを使用してプロジェクトにデプロイ可能なアーキテクチャを追加するには、次の ibmcloud project config-create コマンドを実行します:
ibmcloud project config-create --project-id PROJECT-ID [--definition DEFINITION | --definition-compliance-profile DEFINITION-COMPLIANCE-PROFILE --definition-locator-id DEFINITION-LOCATOR-ID --definition-description DEFINITION-DESCRIPTION --definition-name DEFINITION-NAME --definition-environment-id DEFINITION-ENVIRONMENT-ID --definition-authorizations DEFINITION-AUTHORIZATIONS --definition-inputs DEFINITION-INPUTS --definition-settings DEFINITION-SETTINGS --definition-members DEFINITION-MEMBERS --definition-resource-crns DEFINITION-RESOURCE-CRNS] [--schematics SCHEMATICS | --schematics-workspace-crn SCHEMATICS-WORKSPACE-CRN]
コマンドの例とコマンドパラメータの詳細については、を ibmcloud project config-create 参照してください。
IBM Cloud Projects サービス外でプロジェクト情報をバックアップするには、プロジェクトをエクスポートできます。 詳細については、 Project JSON をご覧ください。
APIを使ってプロジェクトを作成する
以下のサンプル・リクエストに示すように、 Projects APIを呼び出すことで、プログラムでプロジェクトを作成することができます:
curl -X POST --location --header "Authorization: Bearer {iam_token}" \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--data '{ "definition": { "name": "acme-microservice", "description": "A microservice to deploy on top of ACME infrastructure.", "authorizations": { "method": "trusted_profile", "trusted_profile_id": "Profile-9ac10c5c-195c-41ef-b465-68a6b6dg5f12" } }, "configs": [ { "definition": { "name": "account-stage", "description": "The stage account configuration.", "locator_id": "1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.018edf04-e772-4ca2-9785-03e8e03bef72-global" } }, { "definition": { "name": "env-stage", "description": "The stage environment configuration that includes services common to all the environment regions.", "locator_id": "1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.018edf04-e772-4ca2-9785-03e8e03bef72-global", "inputs": { "account_id": "ref:/configs/account-stage/inputs/account_id", "resource_group": "stage", "access_tags": [ "env:stage" ], "logdna_name": "The name of the LogDNA stage service instance.", "sysdig_name": "The name of the SysDig stage service instance." } } }, { "definition": { "name": "region-us-south-stage", "description": "The stage us-south configuration.", "locator_id": "1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.018edf04-e772-4ca2-9785-03e8e03bef72-global" } }, { "definition": { "name": "region-eu-de-stage", "description": "The stage eu-de configuration.", "locator_id": "1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.018edf04-e772-4ca2-9785-03e8e03bef72-global", "inputs": { "account_id": "ref:/configs/account-stage/inputs/account_id", "resource_group": "ref:/configs/env-stage/outputs/resource_group_id", "logdna_id": "ref:/configs/env-stage/outputs/logdna_id", "sysdig_id": "ref:/configs/env-stage/outputs/sysdig_id", "access_tags": [ "region:eu-de" ] } } } ], "location": "us-south", "resource_group": "Default" }' \
"{base_url}/v1/projects"
APIを使用してプロジェクトにデプロイ可能なアーキテクチャを追加する
既存のプロジェクトにデプロイ可能なアーキテクチャをプログラムで追加するには、 プロジェクトAPI を呼び出し、以下のサンプルリクエストに示すように構成をカスタマイズします:
curl -X POST --location --header "Authorization: Bearer {iam_token}" \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--data '{ "definition": { "name": "env-stage", "description": "The stage environment configuration.", "locator_id": "1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.018edf04-e772-4ca2-9785-03e8e03bef72-global", "inputs": { "account_id": "account_id", "resource_group": "stage", "access_tags": [ "env:stage" ], "logdna_name": "LogDNA_stage_service", "sysdig_name": "SysDig_stage_service" } } }' \
"{base_url}/v1/projects/{project_id}/configs"
IBM Cloud Projects サービス外でプロジェクト情報をバックアップするには、プロジェクトをエクスポートできます。 詳細については、 Project JSON をご覧ください。