공용 레지스트리의 이미지에서 앱 워크로드 배치
Code Engine을 사용하여 앱을 배치하십시오. 콘솔 또는 CLI를 사용하여 앱을 만들 수 있습니다.
콘솔에서 앱 배치
Code Engine 콘솔을 사용하여 인증 정보가 필요하지 않은 공용 레지스트리의 이미지로 애플리케이션을 배치하십시오.
이 예에서는 IBM Cloud® Container Registry의 공용 icr.io/codeengine/helloworld 이미지를 참조합니다. 또는 공용 Docker Hub의 이미지 또는 개인용 레지스트리의 이미지를
참조할 수도 있습니다.
- Code Engine 콘솔을 여십시오.
- '만들기 시작'을 선택하세요.
- 사용 가능한 프로젝트 목록에서 프로젝트를 선택하십시오. 프로젝트를 새로 작성할 수도 있습니다. 앱을 배치하려면 선택한 프로젝트가 있어야 합니다.
- 애플리케이션을 선택하십시오.
- 애플리케이션 이름을 입력하십시오. 프로젝트 내에서 고유한 애플리케이션 이름을 사용하십시오.
- 앱의 컨테이너 이미지를 지정하십시오(예:
icr.io/codeengine/helloworld). 앱용 컨테이너 이미지로 변환하고자 하는 자체 소스 코드가 있는 경우, ‘빌드 계획 수립’을 참조하세요. 이 예제에 사용되는 코드에 대한 자세한 정보는helloworld의 내용을 참조하십시오. - 엔드포인트 또는 런타임 설정의 기본값을 수정하십시오. 이러한 옵션에 대한 자세한 정보는 앱의 엔드포인트 가시성 옵션 및 앱 배치 옵션을 참조하십시오.
- 작성을 클릭하십시오.
- 애플리케이션 상태가 준비로 변경되면 애플리케이션을 테스트할 수 있습니다. 애플리케이션 테스트를 클릭한 후 애플리케이션 테스트 분할창에서 요청 전송을 클릭하십시오. 애플리케이션을 웹 페이지에서 열려면 애플리케이션 URL을 클릭하십시오.
애플리케이션을 배치했으므로 애플리케이션 개정, 실행 중인 인스턴스 및 구성 세부사항에 대한 정보를 확인할 수 있습니다.
CLI를 사용하여 앱 배치
CLI로 앱을 작성하고 배치하려면 app create 명령을 사용하십시오. 이 명령에는 이름과 이미지가 필요하며 다른 선택적 인수도 사용할 수 있습니다. 전체 옵션 목록은 ibmcloud ce app create 명령을 참조하십시오.
시작하기 전에
- Code Engine CLI 환경을 설정하십시오.
- 프로젝트를 작성하고 작업하십시오.
다음 application create 명령은 myapp이라는 앱을 작성 및 배치하고 컨테이너 이미지 icr.io/codeengine/hello를 사용합니다.
ibmcloud ce application create --name myapp --image icr.io/codeengine/hello
출력 예
Creating application 'myapp'...
OK
[...]
Run 'ibmcloud ce application get -n myapp' to check the application status.
OK
https://myapp.4idmmq6xpss.us-south.codeengine.appdomain.cloud
다음 표에는 이 예에서 app create 명령과 함께 사용되는 옵션이 요약되어 있습니다. 명령 및 해당 옵션에 대한 자세한 정보는 ibmcloud ce app create 명령을 참조하십시오.
| 옵션 | 설명 |
|---|---|
--name |
애플리케이션의 이름. 프로젝트 내에서 고유한 이름을 사용하십시오. 이 값은 필수입니다.
|
--image |
이 애플리케이션에 사용되는 이미지의 이름입니다. 이 값은 필수입니다. 형식은 REGISTRY/NAMESPACE/REPOSITORY:TAG입니다. 여기서, REGISTRY 및 TAG는 선택사항입니다. TAG를 지정하지 않으면 기본값은 latest입니다. Docker Hub의 이미지의 경우, NAMESPACE/REPOSITORY 형식으로 이미지를 지정할 수 있습니다. Registry 의 기본값은 docker.io 이기 때문입니다. 다른 레지스트리의 경우 REGISTRY/NAMESPACE/REPOSITORY 또는
REGISTRY/NAMESPACE/REPOSITORY:TAG를 사용하십시오. |
다음 단계
-
앱이 배치되면 URL을 통해 앱에 액세스하십시오.
-
사용자 정의 도메인 맵핑 을 작성하여 앱에 지정할 수 있습니다. 사용자 정의 도메인 이름을 사용하여 여러 지역에 앱을 배치하는 방법에 대한 자세한 정보는 고가용성 애플리케이션 구성 을 참조하십시오.
-
앱이 배포되었으니, 이제 앱을 이벤트 기반 방식으로 전환하는 것을 고려해 보세요. 이벤트 구독을 사용하여 주기적 스케줄 로 앱을 트리거하거나 파일 업로드 또는 Kafka 메시지 와 같은 이벤트에 반응하도록 앱을 설정할 수 있습니다.
앱이 배치되면 앱 작성 방식이나 이전의 업데이트 방식에 관계없이 다음 방법 중 하나로 배치된 앱을 업데이트하고 참조 코드를 업데이트할 수 있습니다.
-
Open Container Initiative(OCI)표준에 부합하는 컨테이너 이미지가 있다면, 앱을 배포할 때 해당 이미지의 참조 정보만 제공하면 되며, 이 참조 정보는 컨테이너 레지스트리의 위치를 가리키게 됩니다. 공용 레지스트리 또는 개인용 레지스트리 의 이미지를 사용하여 앱을 배치할 수 있습니다.
app create명령을 사용하여 앱을 작성하고 로컬 또는 저장소 소스에서 컨테이너 이미지를 빌드하도록--build-source옵션을 지정했으며 다른 컨테이너 이미지를 가리키도록 앱을 변경하려는 경우에는 먼저 앱에서 빌드의 연관을 제거해야 합니다. 예를 들어,ibmcloud ce application update -n APP_NAME --build-clear를 실행하십시오. 앱에서 빌드의 연관을 제거한 후 다른 이미지를 참조하도록 앱을 업데이트할 수 있습니다. -
Git 저장소에 있는 소스 코드로 시작하는 경우, Code Engine에서 한 번의 오퍼레이션으로 소스에서 이미지를 빌드하고 앱을 배치하도록 선택할 수 있습니다. 이 경우 Code Engine은 이미지를 IBM Cloud® Container Registry에 업로드합니다. 자세한 정보는 저장소 소스 코드에서 앱 배치를 참조하십시오. 이미지 빌드를 더 많이 제어하려면 앱을 배치하기 전에 Code Engine을 사용하여 이미지를 빌드하도록 선택할 수 있습니다.
-
로컬 워크스테이션에 있는 소스 코드로 시작하는 경우, Code Engine에서 하나의 CLI 명령으로 소스에서 이미지를 빌드하고 앱을 배치하도록 선택할 수 있습니다. 이 경우 Code Engine은 이미지를 IBM Cloud® Container Registry에 업로드합니다. 자세한 정보는 CLI를 사용하여 로컬 소스 코드에서 앱 배치를 참조하십시오. 이미지 빌드를 더 많이 제어하려면 앱을 배치하기 전에 Code Engine을 사용하여 이미지를 빌드하도록 선택할 수 있습니다.
예를 들어, 사용자가 앱에 대한 소스 개발을 진행하는 동안 Code Engine에서 로컬 소스의 빌드를 처리하도록 선택할 수 있습니다. 그런 다음 이미지가 만기되면 원하는 특정 이미지를 참조하도록 배치된 앱을 업데이트할 수 있습니다. 이 프로세스는 필요에 따라 반복할 수 있습니다.
업데이트된 앱을 배치할 때 이미지에 대해 태그를 지정하지 않는 한 참조된 컨테이너 이미지의 최신 버전이 다운로드되어 배치됩니다. 이미지에 대해 태그를 지정한 경우 태그 지정된 이미지가 배치에 사용됩니다.
더 많은 코드 예를 찾고 계십니까? IBM Cloud Code Engine GitHub 저장소의 예제를 확인해 보세요.