이 페이지에서는 프로젝트 메타데이터를 가져오고 기존 프로젝트 설정을 수정하는 방법을 설명합니다. 상태 또는 표시 이름을 기준으로 리소스 계층 구조 내에서 특정 프로젝트를 검색할 수도 있습니다.
프로젝트 이름, 번호, ID 찾기
Google Cloud 리소스와 상호작용하려면 모든 요청에 프로젝트 식별 정보를 제공해야 합니다. 프로젝트는 프로젝트 ID와 프로젝트 번호로 식별됩니다.
콘솔
Google Cloud 콘솔에서 시작하기 페이지로 이동합니다.
페이지 상단의 프로젝트 선택기에서 프로젝트를 선택합니다.
프로젝트 이름, 프로젝트 번호, 프로젝트 ID가 시작하기 제목 뒤에 표시됩니다.
기존 프로젝트 가져오기
프로젝트의 수명 주기 상태, 생성 시간, 상위 리소스와 같은 특정 Google Cloud 프로젝트의 자세한 메타데이터를 가져오려면 Google Cloud CLI 또는 API를 사용하세요.
프로젝트 세부정보에 액세스하려면 프로젝트 소유자 상태이거나 브라우저 역할(roles/browser)의 권한이 있어야 합니다.
gcloud
아래의 명령어 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
다음 명령어를 실행합니다.
Linux, macOS 또는 Cloud Shell
gcloud projects describe PROJECT_ID
Windows(PowerShell)
gcloud projects describe PROJECT_ID
Windows(cmd.exe)
gcloud projects describe PROJECT_ID
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
HTTP 메서드 및 URL:
GET https://cloudresourcemanager.googleapis.com/v3/projects/PROJECT_ID
JSON 요청 본문:
{}
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
요청 본문을 request.json 파일에 저장하고 다음 명령어를 실행합니다.
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://cloudresourcemanager.googleapis.com/v3/projects/PROJECT_ID"
PowerShell
요청 본문을 request.json 파일에 저장하고 다음 명령어를 실행합니다.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://cloudresourcemanager.googleapis.com/v3/projects/PROJECT_ID" | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 표시됩니다.
{
"projectNumber": "464036093014",
"projectId": "our-project-123",
"lifecycleState": "ACTIVE",
"name": "my project",
"labels": {
"mylabel": "prod"
},
"createTime": "2016-01-07T21:59:43.314Z"
}
리소스의 모든 프로젝트 나열
리소스의 직접 하위 항목인 모든 프로젝트를 나열하려면 v3 projects.list 메서드를 사용하고 쿼리에 상위 리소스를 지정합니다.
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- FOLDER_ID: Google Cloud 폴더 ID
HTTP 메서드 및 URL:
GET https://cloudresourcemanager.googleapis.com/v3/projects
JSON 요청 본문:
{
"parent": "folders/662951040570"
}
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
요청 본문을 request.json 파일에 저장하고 다음 명령어를 실행합니다.
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://cloudresourcemanager.googleapis.com/v3/projects"
PowerShell
요청 본문을 request.json 파일에 저장하고 다음 명령어를 실행합니다.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://cloudresourcemanager.googleapis.com/v3/projects" | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 표시됩니다.
{
"projectNumber": "464036093014",
"projectId": "our-project-123",
"lifecycleState": "ACTIVE",
"name": "my project",
"labels": {
"mylabel": "prod"
},
"createTime": "2016-01-07T21:59:43.314Z"
}
프로젝트 검색
표시 이름 접두사 또는 특정 수명 주기 상태와 같은 특정 기준에 일치하는 프로젝트를 찾으려면 projects.search 메서드 또는 gcloud alpha resource-manager projects search 명령어를 사용합니다.
검색 범위에는 resourcemanager.projects.get 권한이 있는 모든 프로젝트가 포함됩니다.
쿼리 문법
--query 플래그 (gcloud) 또는 query 매개변수 (API)를 사용하여 검색을 필터링할 수 있습니다.
일반적인 검색 필터는 다음과 같습니다.
displayName: 프로젝트의 사용자 친화적인 이름입니다.state: 프로젝트의 수명 주기 상태입니다(예:ACTIVE또는DELETE_REQUESTED).parent.type및parent.id: 특정 조직 또는 폴더별로 결과를 필터링합니다.
권한
쿼리에서 상위 요소를 지정하는 경우 (예: parent:folders/123) 해당 상위 요소에 대한 resourcemanager.projects.list 권한이 있어야 합니다. 이 권한이 있으면 나머지 필터가 적용된 후 상위 요소 아래의 모든 프로젝트가 반환됩니다.
이 권한이 없으면 나머지 필터가 적용된 후 사용자에게 resourcemanager.projects.get 권한이 있는 모든 프로젝트가 반환됩니다.
상위를 지정하지 않으면 resourcemanager.projects.get 권한이 있는 모든 프로젝트가 결과에 포함됩니다.
gcloud
아래의 명령어 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
다음 명령어를 실행합니다.
Linux, macOS 또는 Cloud Shell
gcloud alpha projects search --query="name:z*"
Windows(PowerShell)
gcloud alpha projects search --query="name:z*"
Windows(cmd.exe)
gcloud alpha projects search --query="name:z*"
다음과 비슷한 응답이 표시됩니다.
The response contains the projects with names starting with 'z'
REST
HTTP 메서드 및 URL:
GET https://cloudresourcemanager.googleapis.com/v3/projects:search?query=displayName%3ATokyo%2BRain
JSON 요청 본문:
{}
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
요청 본문을 request.json 파일에 저장하고 다음 명령어를 실행합니다.
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://cloudresourcemanager.googleapis.com/v3/projects:search?query=displayName%3ATokyo%2BRain"
PowerShell
요청 본문을 request.json 파일에 저장하고 다음 명령어를 실행합니다.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://cloudresourcemanager.googleapis.com/v3/projects:search?query=displayName%3ATokyo%2BRain" | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 표시됩니다.
{
"projects": [
{
"name": "projects/951040570662",
"parent": "folders/662951040570",
"projectId": "tokyo-rain-123",
"state": "ACTIVE",
"displayName": "Tokyo Rain",
"createTime": "2013-11-13T20:31:53.308Z",
"updateTime": "2013-11-13T20:31:53.308Z",
"etag": "BwWUlZ6XEfY="
}
]
}
프로젝트 업데이트
프로젝트 이름, 라벨, 태그를 확인할 수 있습니다. 프로젝트 업데이트에 대한 자세한 내용은 프로젝트 API 참조 페이지를 참고하세요. 프로젝트를 업데이트하려면 다음 방법 중 하나를 사용하세요.
콘솔
Google Cloud 콘솔을 사용하여 프로젝트 이름 또는 라벨을 업데이트하려면 다음을 수행합니다.
- Google Cloud 콘솔에서 IAM 및 관리자 설정 페이지로 이동합니다.
나머지 단계는 Google Cloud 콘솔에 표시됩니다.
- 화면 상단에서 프로젝트 선택 드롭다운 목록을 클릭합니다.
- 다음 조직에서 선택 창이 나타나면 조직 드롭다운 목록을 클릭한 후 조직을 선택합니다. 무료 체험판 사용자인 경우에는 조직 목록이 표시되지 않으므로 이 단계를 건너뜁니다.
- 목록이 나타나면 프로젝트를 선택합니다.
- 프로젝트 이름을 변경하려면 프로젝트 이름을 수정한 후 저장을 클릭합니다.
- 태그를 추가하거나 수정하려면 페이지의 태그 섹션으로 이동하여 태그 관리를 클릭합니다. 태그 키와 값을 추가하거나 업데이트하는 방법에 관한 자세한 내용은 태그 만들기 및 관리를 참고하세요.
- 라벨을 변경하려면 왼쪽 탐색 메뉴에서 라벨을 클릭합니다.
라벨 사용에 대해 자세히 알아보세요.
gcloud
-
Google Cloud 콘솔에서 Cloud Shell을 활성화합니다.
Google Cloud 콘솔 하단에 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. Cloud Shell은 Google Cloud CLI가 사전 설치된 셸 환경으로, 현재 프로젝트의 값이 이미 설정되어 있습니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.
프로젝트 이름 또는 라벨을 업데이트하려면
gcloud alpha projects update명령어를 사용합니다.gcloud alpha projects update PROJECT_ID \ --name=NAME \ --update-labels=KEY=VALUE, ...
다음을 바꿉니다.
PROJECT_ID: 업데이트할 프로젝트의 ID입니다.NAME: 프로젝트에 할당할 새 이름입니다.KEY: 업데이트하려는 라벨의 키입니다.VALUE: 업데이트하려는 라벨의 값입니다.
자세한 내용과 이 명령어에 사용할 수 있는 추가 플래그는 Google Cloud CLI SDK를 참조하세요.
REST
프로젝트를 업데이트하려면 다음을 수행합니다.
projects.get메서드를 사용하여project객체를 가져옵니다.업데이트할 필드를 수정합니다.
projects.patch메서드를 호출합니다.
다음 예시에서는 프로젝트의 표시 이름을 myproject로 업데이트하고 color 라벨을 red로 설정합니다.
요청:
PATCH https://cloudresourcemanager.googleapis.com/v3/projects/PROJECT_NUMBER?updateMask=displayName,labels
여기서 PROJECT_NUMBER는 업데이트하려는 프로젝트의 숫자 ID입니다.
JSON 요청 본문:
{
"displayName": "myproject",
"labels": {
"color": "red"
}
}
응답:
{
"projects": [
{
"name": "projects/951054970012",
"parent": "folders/662951040570",
"projectId": "Osaka-rain-234",
"state": "ACTIVE",
"displayName": "myproject",
"createTime": "2013-11-13T20:31:53.308Z",
"updateTime": "2013-11-13T20:35:42.308Z",
"etag": "BwWUlZ6XEfY=",
"labels": {
"color": "red"
}
}
]
}
다음 단계
- 리소스 계층 구조 내에서 프로젝트를 이동하는 방법을 알아봅니다.
- 한 조직 리소스에서 다른 조직 리소스로 프로젝트를 마이그레이션하는 방법을 알아보세요.