Code Engine REST API 시작하기
IBM Cloud® Code Engine API를 사용하여 Code Engine 엔티티를 작성하고 관리할 수 있습니다.
API 환경 설정
API에 대해 작업하여 Code Engine 엔티티를 작성하고 관리하려면 API 환경을 설정하십시오.
시작하기 전에 경량의 유연한 명령행 JSON 프로세서인 jq 도구를 다운로드하여 설치하십시오. 이 도구를 사용하면 Code Engine API에서 수신하는 JSON 응답에 대해 작업하기가 더 쉬워집니다.
-
API에서 예제 Curl 명령을 실행하기 전에
region,api_key및project_name의 값을 설정하십시오. 예를 들면 다음과 같습니다.region=us-south api_key=YOUR_IBM_CLOUD_API_KEY project_name=MY_PROJECT_NAME- 로그인한 IBM Cloud 지역을 검색하려면
ibmcloud region명령을 실행하십시오. - IBM Cloud API 키에 대한 자세한 내용은 ‘사용자 API 키 관리’를 참조하세요.
- Code Engine 프로젝트에 대한 자세한 정보는 프로젝트 관리 를 참조하십시오.
- 로그인한 IBM Cloud 지역을 검색하려면
-
유효한 IBM Cloud® Identity and Access Management (IAM) 액세스 토큰이 있는지 확인하십시오. IAM API에 대한 자세한 내용은 ‘API 키를 사용하여 사용자 또는 서비스 ID에 대한 IAM 액세스 토큰 생성’을 참조하세요.
token=`curl -X POST "https://iam.cloud.ibm.com/identity/token" \ -H "Content-Type: application/x-www-form-urlencoded" \ -H "Accept: application/json" \ -d "grant_type=urn:ibm:params:oauth:grant-type:apikey" \ -d "apikey=${api_key}" \ | jq .access_token -r` -
1단계에서정의한 인증 토큰 및 변수를 사용하여 프로젝트의 프로젝트 ID를 검색하십시오. 다음 예제에서는
jq와 함께curl를 사용하여 Code Engine API 응답을 구문 분석하고 프로젝트 ID를 변수에 저장하십시오. 예를 들면 다음과 같습니다.project_id=`curl -X GET "https://api.${region}.codeengine.cloud.ibm.com/v2/projects" \ -H "Authorization: ${token}" \ | jq --arg project_name ${project_name} '.projects[] | select(.name == $project_name) | .id' -r`
API에서 Code Engine 애플리케이션에 대한 작업
이제 Code Engine API 환경이 설정되었으므로 애플리케이션 또는 작업과 같은 Code Engine 엔티티에 대해 작업할 준비가 되었습니다. 다음 시나리오에서는 애플리케이션을 작성하고 액세스한 후 애플리케이션을 삭제합니다.
-
앱을 작성하십시오. 이전에 설정된 변수 및 프로젝트 ID를 사용하여 URL 을 구성하고 요청을 전송하여
my-app애플리케이션을 작성하십시오. 예를 들면 다음과 같습니다.curl -X POST "https://api.${region}.codeengine.cloud.ibm.com/v2/projects/${project_id}/apps" \ -H "Authorization: ${token}" \ -H "Content-Type: application/json" \ -d '{ \ "name": "my-app", \ "image_reference": "icr.io/codeengine/helloworld" \ }' -
my-app애플리케이션에 대한 세부사항을 표시하려면GET요청을 전송하십시오. 앱의 이름을 참조해야 합니다.jq의 마지막 행은 출력을 더 읽기 쉽게 하지만 선택사항입니다.curl -X GET "https://api.${region}.codeengine.cloud.ibm.com/v2/projects/${project_id}/apps/my-app" \ -H "Authorization: ${token}" \ -H "Content-Type: application/json" \ | jq . -
애플리케이션을 삭제하려면 요청을 다시 보내십시오. 단, 이번에는
GET메소드 대신DELETE메소드를 사용하십시오.curl -X DELETE "https://api.${region}.codeengine.cloud.ibm.com/v2/projects/${project_id}/apps/my-app" \ -H "Authorization: ${token}" \ -H "Content-Type: application/json" -
(선택사항)
my-app에 대한 정보를 검색하기 위해 다른GET요청을 전송하는 경우, 자원이 더 이상 존재하지 않으므로404 error를 수신합니다.
출력 예
{
"errors": [
{
"code": "resource_not_found",
"message": "Resource not found."
}
],
"trace": "codeengine-api-34dc0040429941de8c9e02f0f1200af1",
"status_code": 404
}
다음 단계
이제 환경을 설정하고 API를 사용하여 Code Engine 애플리케이션으로 첫 번째 단계를 수행했으므로 Code Engine API를 추가로 탐색할 준비가 되었습니까?
여러 언어로 된 Code Engine SDK에 대한 자세한 정보 및 예제는 Code Engine API 문서를 참조하십시오.
API를 사용하여 Code Engine 컴포넌트에 대한 작업을 시작하려면 다음을 참조하십시오.
IBM Cloud® Code Engine은 빌드된 기본 기술과 상호 작용할 필요가 없도록 설계되었습니다. 하지만 Kubernetes 또는 Knative를 기반으로 하는 기존 도구를 보유하고 있는 경우에도 Code Engine 를 통해 계속 사용할 수 있습니다. Code Engine 는 Knative 및 Kubernetes API와 해당 CLI 명령어를 지원합니다. 자세한 정보는 Code Engine 와 함께 Kubernetes 사용 및 Code Engine 에서 Knative 사용 의 내용을 참조하십시오.