프로젝트 작성

프로리소스와 인프라스트럭처를 코드 배포로 정의하고 관리하는 아티팩트 모음입니다. 젝트에서 카탈로그의 배포 가능한 아키텍처를 추가하고 해당 구성을 편집할 수 있습니다. 프로젝트에서 구성을 배포하면 배포한 구성에 따라 리소스가 그룹화됩니다.

시작하기 전에

사용자를 위해 프로젝트 계정에 리소스가 생성됩니다. 프로젝트를 생성할 수 있는 권한과 계정 내에서 프로젝트 도구 리소스를 생성할 수 있는 권한이 있어야 합니다. 다음 액세스 권한이 있는지 확인하세요:

  • IBM Cloud 프로젝트 서비스의 편집자 역할.
  • IBM Cloud® Schematics 서비스의 편집자 및 관리자 역할
  • 프로젝트의 리소스 그룹에 대한 뷰어 역할

프로젝트에 대한 사용자 접근 권한 부여에 대한 자세한 내용은 '프로젝트에 대한 사용자 접근 권한 부여'를 참조하십시오.

프로젝트에 사용자 추가하기

프로젝트 접근 권한은 IAM( IBM Cloud ) Identity and Access Management 을 통해 제어됩니다. 프로젝트 인스턴스에서 '리더' 역할 또는 그 이상의 권한을 부여하여 사용자를 프로젝트에 추가합니다. 프로젝트에 대한 액세스 권한 부여에 대한 자세한 내용은 '프로젝트에 대한 사용자 액세스 권한 부여'를 참조하십시오.

콘솔을 사용하여 프로젝트 만들기

탐색 메뉴 아이콘 탐색 메뉴 이동하여 프로젝트를 선택하거나 탈로그의 배포 가능한 아키텍처에서 프로젝트를 생성할 수 있습니다. 프로젝트는 프로젝트 API 를 사용하여 생성할 수도 있습니다.

콘솔을 사용하여 프로젝트에 배포 가능한 아키텍처를 추가하기

프로젝트에 추가하는 배포 가능한 아키텍처는 프로젝트 UI에서 구성으로 표시됩니다. 프로젝트에 배포 가능한 아키텍처를 추가한 후에는 배포하기 전에 구성을 편집할 수 있습니다. 프로젝트에 배포 가능한 아키텍처를 추가하는 방법은 몇 가지가 있습니다.

프로젝트 대시보드에서 프로젝트에 배포 가능한 아키텍처를 추가하려면 다음 단계를 완료하십시오:

  1. 프로젝트 대시보드에서 구성 탭을 선택하십시오.
  2. 작성을 클릭하십시오.
  3. 카탈로그에서 배포 가능한 아키텍처를 선택하십시오.
  4. 구성 및 배포를 클릭합니다.

카탈로그에서 직접 프로젝트에 배포 가능한 아키텍처를 추가할 수도 있습니다:

  1. IBM Cloud 카탈로그로 이동하십시오.
  2. 배포 가능한 아키텍처를 선택하십시오.
  3. 카탈로그 목록에서 새 프로젝트를 생성하거나 기존 프로젝트에 추가할 수 있습니다.
  4. 구성 및 배포를 클릭합니다.

프로젝트에서 배포 가능한 아키텍처 맞춤 설정

배포 가능한 아키텍처에 따라, 카탈로그에서 프로젝트에 추가할 때 이를 사용자 정의할 수 있습니다. 다음과 같은 옵션이 있을 수 있습니다:

  • 특정 사용 사례에 대한 솔루션을 확장하기 위해 선택적 배포 가능 아키텍처를 추가하십시오.
  • 한 아키텍처를 다른 아키텍처로 교체하다. 예를 들어, 여러 데이터베이스 옵션이 제공되는 경우 사용하고자 하는 옵션을 선택할 수 있습니다.
  • 프로젝트 내 기존 아키텍처 구성을 선택하여 추가하려는 아키텍처와 함께 재사용하십시오. 이를 통해 비용을 절감하고 동일한 배포를 여러 아키텍처에 재사용할 수 있습니다.

카탈로그 목록의 '이 아키텍처 확장' 섹션에서 구성 및 배포 전에 아키텍처를 세분화하려면 '사용자 지정'을 클릭하십시오. 배포 가능 아키텍처의 카탈로그 목록에서 '사용자 지정' 옵션이 제공되지 않는 경우에도, 프로젝트 내에서 다른 배포 가능 아키텍처를 이 아키텍처와 함께 스태킹하여 아키텍처를 구성하고 사용자 지정할 수 있습니다.

선택을 완료하고 배포 가능한 아키텍처를 프로젝트에 추가한 후, 구성 탭에서 아키텍처 맞춤 설정 아이콘 옵션 > 옵션 을 선택하여 추가로 사용자 정의할 수 있습니다. 여기서부터 호환 가능한 다른 배포 가능 아키텍처를 추가하여 솔루션을 더욱 맞춤화할 수 있습니다.

IBM Cloud 프로젝트 서비스 외부에서 프로젝트 정보를 백업하려면 프로젝트를 내보낼 수 있습니다. 자세한 내용은 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 프로젝트 서비스 외부에서 프로젝트 정보를 백업하려면 프로젝트를 내보낼 수 있습니다. 자세한 내용은 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 프로젝트 서비스 외부에서 프로젝트 정보를 백업하려면 프로젝트를 내보낼 수 있습니다. 자세한 내용은 Project JSON 을 참조하십시오.