개인용 저장소에서 소스를 가져오는 빌드 구성 작성
소스가 개인용 저장소에 있는 경우, 개인용 저장소에서 소스를 가져올 위치에 대한 정보가 포함된 설정으로 빌드 구성을 작성하십시오. 빌드 출력의 경우 레지스트리의 빌드된 이미지에 액세스하기 위해 레지스트리 시크릿과 함께 레지스트리 세부사항을 지정하도록 선택할 수 있습니다. 또는 Code Engine이 소스에서 이미지를 빌드한 후 IBM Cloud Container Registry에 이미지를 저장하도록 선택할 수 있습니다. 이 경우, 레지스트리 시크릿 또는 이미지 레지스트리의 위치를 지정할 필요가 없습니다.
빌드 구성을 작성하면 이미지가 작성되는 것이 아니라 이미지를 빌드할 구성이 작성됩니다. 빌드 구성을 참조하여 이미지를 작성하는 빌드를 실행해야 합니다. 빌드가 실행될 때까지 빌드 구성은 유효성이 검증되거나 이미지를 작성하는 데 사용되지 않습니다. 빌드 구성을 사용하면 소스 저장소에 변경사항이 적용되는 경우 등에 여러 후속 이미지 빌드를 사용할 수 있습니다.
.gitignore
파일과 유사하게 작동하는 .ceignore
파일을 사용하여 소스 코드 내에서 특정 파일 패턴을 무시하도록 선택할 수 있습니다. 예를 들어, node.js 애플리케이션의 .ceignore
파일에 대한 항목에는 node_modules
및 .npm
이 포함될 수 있습니다. 무시할 추가 샘플 파일 패턴은
GitHub.gitignore 저장소를 참조하십시오.
콘솔에서 빌드 구성 작성(개인용 저장소)
-
Code Engine 대시보드로 이동하십시오.
-
컨테이너 레지스트리를 추가한 프로젝트를 선택하십시오.
-
프로젝트 페이지에서 이미지 빌드를 클릭하십시오.
-
이미지 빌드 탭에서 작성을 클릭하십시오. 빌드 세부사항을 입력하는 빌드 세부사항 지정 사이드 패널이 열립니다.
-
소스 섹션에서 빌드의 이름, 소스 저장소의 URL 및 코드 저장소 액세스를 입력하십시오.
- 코드가 개인용 저장소에 있는 경우, 코드 저장소 URL에 대해 SSH URL을 사용하고 기존 SSH 시크릿의 이름을 선택하거나 SSH 시크릿을 작성 하십시오. SSH URL의 예는
git@github.com:IBM/CodeEngine.git
입니다. - 선택적으로 소스 분기 이름을 선택하십시오. 분기 이름을 제공하지 않고 필드를 비워 두면 Code Engine에서 지정된 저장소의 기본 분기를 자동으로 사용합니다. 다른 분기 이름, 태그 또는 커미트 ID를 입력할 수 있습니다.
계속하려면 다음을 클릭하십시오.
- 코드가 개인용 저장소에 있는 경우, 코드 저장소 URL에 대해 SSH URL을 사용하고 기존 SSH 시크릿의 이름을 선택하거나 SSH 시크릿을 작성 하십시오. SSH URL의 예는
-
전략 섹션에서 사용할 전략을 선택하십시오.
- Dockerfile을 선택하는 경우 Dockerfile에 대한 대체 경로를 지정할 수도 있습니다.
- 빌드 리소스 아래에서 빌드 크기를 선택하십시오.
다음을 클릭하여 마지막 섹션으로 진행하십시오.
-
출력 섹션에 컨테이너 이미지의 세부사항을 입력하십시오.
- 기존 레지스트리 시크릿을 선택하거나 레지스트리 시크릿 작성 을 클릭하여 새 레지스트리 시크릿을 추가하십시오.
- 계정에 있는 Container Registry 인스턴스에 이미지를 빌드하는 경우
Code Engine managed secret
및 Code Engine 를 선택하여 시크릿을 작성하고 관리할 수 있습니다. - 그런 다음 빌드할 이미지의 네임스페이스, 저장소 및 태그를 선택하십시오. Code Engine 에 대해 선택하여 Container Registry 에서 네임스페이스를 작성하고 관리할 수 있습니다.
- 이미지가 Container Registry에 있는 경우 기존 이미지 중에서 선택하거나 새 저장소 또는 태그를 입력할 수 있습니다.
-
완료를 클릭하여 빌드 작성을 완료하십시오.
빌드 구성을 작성한 후 빌드를 실행 하여 이미지 파일을 작성해야 합니다. 이미지 파일이 작성된 후 새로 빌드된 이미지 파일을 사용하여 앱을 배치 하거나 작업을 실행 할 수 있습니다.
CLI에서 빌드 구성 작성(개인용 저장소)
CLI를 사용하여 빌드 구성을 작성하려면 build create
명령을 사용하십시오. 전체 옵션 목록은 ibmcloud ce build create
명령을 참조하십시오.
build create
명령을 사용하여 Code Engine이 소스에서 이미지를 빌드한 후 IBM Cloud Container Registry에 이미지를 저장하도록 선택할 수 있습니다. 이 자동 액세스 의 경우, 레지스트리 시크릿 또는 이미지 레지스트리의 위치를 지정할 필요가 없습니다. 또는 Code Engine 가 레지스트리에 액세스하여 빌드 결과를 푸시할
수 있도록 빌드 이미지 출력의 위치를 지정하고 레지스트리 시크릿을 제공할 수 있습니다.
CLI에서 빌드 구성 작성(개인용 저장소 소스 및 레지스트리에 대한 자동 액세스 사용)
이 경우 Code Engine은 개인용 저장소 소스에서 이미지를 빌드한 후 이미지를 IBM Cloud Container Registry에 자동으로 업로드합니다. Code Engine이 Container Registry에서 이러한 이미지에 자동으로 액세스하는 데 필요한 권한 설정에 대한 자세한 정보는 이미지 레지스트리의 권한 설정을 참조하십시오.
시작하기 전에
개인용 저장소에서 이미지를 빌드하는 빌드 구성을 작성하고 Code Engine에서 이미지를 자동으로 저장하고 액세스하도록 설정하십시오. 예를 들어, 다음 build create
명령은 개인용 Git 저장소 https://github.com/myprivaterepo/builds
에서 빌드되는 helloworld-build-private
이라는 빌드 구성을 작성하고 buildpacks
전략 및 medium
빌드 크기를 사용합니다. Code Engine은 이미지를 IBM Cloud Container Registry에 자동으로 업로드합니다. --commit
옵션으로 저장소의 분기 이름을 지정하지 않았기 때문에 Code Engine에서는 지정된 저장소의 기본 분기를 자동으로 사용합니다. 이
Git 저장소의 경우 main
입니다. 이미지 레지스트리 또는 레지스트리 시크릿의 위치를 지정하지 않으면 Code Engine 가 자동 액세스를 사용하여 IBM Cloud Container Registry 에 빌드 출력을 푸시합니다.
제공된 Git 저장소는 비공개이므로 액세스하려면 Git 저장소 시크릿이 필요합니다. 따라서 지정하는 --source
에는 SSH 프로토콜(예: git@github.com:myprivaterepo/builds.git
)을 사용해야 합니다. --source
값은 http
또는 https
형식을 사용하면 안됩니다.
ibmcloud ce build create --name helloworld-build-private --source git@github.com:myprivaterepo/builds.git --context-dir /hello --strategy buildpacks --git-repo-secret myrepo
빌드 구성을 작성한 후 빌드를 실행 하여 이미지 파일을 작성해야 합니다. 이미지 파일이 작성된 후 새로 빌드된 이미지 파일을 사용하여 앱을 배치 하거나 작업을 실행 할 수 있습니다.
CLI에서 빌드 구성 작성(개인용 저장소 소스 및 레지스트리에 대한 사용자 제공 액세스 사용)
이 경우 Code Engine은 사용자가 제공하는 Git 저장소 시크릿을 사용하여 개인용 저장소 소스에서 이미지를 빌드한 후 사용자가 제공하는 레지스트리 액세스를 사용하여 이미지를 컨테이너 레지스트리에 업로드합니다.
시작하기 전에
- Code Engine CLI 환경을 설정하십시오.
- 프로젝트를 작성하고 작업하십시오.
- 소스에 액세스하기 위한 Git 저장소 시크릿을 작성하십시오..
- 이미지를 저장할 수 있도록 레지스트리 시크릿을 작성하십시오.
개인용 저장소에서 이미지를 빌드하기 위한 빌드 구성을 작성하고 레지스트리 시크릿을 사용하여 빌드 출력에 대한 이미지 레지스트리의 위치를 지정하십시오. build create
명령에 이미지 레지스트리의 위치를 제공하는 --image
옵션과 레지스트리에 액세스하는 --registry-secret
옵션을 지정하십시오. 예를 들어,
다음 명령은 사설 Git 저장소 https://github.com/myprivaterepo/builds
에서 빌드하고 buildpacks
전략 및 medium
빌드 크기를 사용하며 myregistry
에 정의된 레지스트리 시크릿을 사용하여 이미지를 us.icr.io/mynamespace/codeengine-helloworld
에 저장하는 helloworld-build-private
라는 빌드 구성을 작성합니다.
제공된 Git 저장소는 비공개이므로 액세스하려면 Git 저장소 시크릿이 필요합니다. 따라서 지정하는 --source
에는 SSH 프로토콜(예: git@github.com:myprivaterepo/builds.git
)을 사용해야 합니다. --source
값은 http
또는 https
형식을 사용하면 안됩니다.
이 예에서 명령은 기본 medium
빌드 크기를 사용합니다. --commit
옵션으로 저장소의 분기 이름을 지정하지 않았기 때문에 Code Engine에서는 지정된 저장소의 기본 분기를 자동으로 사용합니다.
ibmcloud ce build create --name helloworld-build-private --image us.icr.io/mynamespace/codeengine-helloworld --registry-secret myregistry --source git@github.com:myprivaterepo/builds.git --context-dir /hello --strategy buildpacks --git-repo-secret myrepo
빌드 구성을 작성한 후 빌드를 실행 하여 이미지 파일을 작성해야 합니다. 이미지 파일이 작성된 후 새로 빌드된 이미지 파일을 사용하여 앱을 배치 하거나 작업을 실행 할 수 있습니다.