개인용 코드 저장소 액세스
코드 저장소(예: GitHub 또는 GitLab)에는 소스 코드가 저장됩니다. Code Engine을 사용하면 개인용 코드 저장소에 대한 액세스 권한을 추가한 후 빌드에서 해당 저장소를 참조할 수 있습니다.
개인용 코드 저장소에 대한 액세스를 작성한 후에는 저장소에서 코드를 가져와서 빌드하고 IBM Cloud® Code Engine으로 앱 또는 작업을 배치할 수 있습니다.
코드 저장소 액세스 권한 작성
개인 코드 저장소에 대한 액세스를 작성할 때 Code Engine에 인증 정보를 저장합니다. 이러한 신임 정보를 SSH 시크릿이라고 합니다.
시작하기 전에
코드 저장소의 SSH 키 선택
GitHub와 GitLab 둘 다의 경우 소스 저장소에 연결할 두 종류의 SSH 키를 결정할 수 있습니다.
-
소스 코드 저장소와 연관된 SSH 키. 이 키로는 SSH 키를 등록한 저장소에만 액세스할 수 있습니다. 이 액세스 권한은 읽기 전용이며, 기본적으로 Code Engine에서 소스 코드를 다운로드하는 데 필요한 레벨입니다. 필요한 경우 쓰기 액세스 권한을 선택할 수 있습니다. 지정된 저장소에 대한 액세스만 제어하기 위해 특정 저장소로 범위가 지정된 SSH 키를 설정하려면 이 옵션을 선택하는 것이 좋습니다.
-
사용자와 연관된 SSH 키(예: 사용자 고유 계정 또는 조직에서 사용 가능한 기능 ID). 이 SSH 키에는 사용자 계정의 저장소 권한이 있습니다. Code Engine에서 소스 코드를 다운로드하려면 읽기 액세스 권한이 필요합니다.
사용자 계정으로 범위가 지정된 SSH 키를 설정하면 전체 계정에 액세스할 수 있으므로 이 옵션을 선택할 때 보안에 미치는 영향을 아는 것이 중요합니다.
보안 비밀번호 문구를 사용하여 SSH 키 파일을 작성하지 마십시오. 이 조치로 인해 build
명령이 실패합니다.
콘솔에서 개인용 저장소 액세스 추가
시작하기 전에 프로젝트를 작성하십시오.
- 프로젝트가 활성 상태가 되면 Code Engine 프로젝트 페이지에서 프로젝트 이름을 클릭합니다.
- 컴포넌트 페이지에서 시크릿 및 configmap을 클릭하십시오.
- 시크릿 및 configmap 페이지에서 작성을 클릭하여 시크릿을 작성하십시오.
- 시크릿 또는 configmap 작성 페이지에서 다음 단계를 완료하십시오.
- SSH 시크릿을 선택하고 다음을 클릭하십시오.
- 이름을 입력합니다(예:
mysecret-ssh
). - 이 시크릿에 대한 SSH 개인 키를 추가하십시오.
- 작성을 클릭하여 시크릿을 작성하십시오.
이제 콘솔에서 비밀번호가 만들어졌으므로 비밀번호 및 구성 맵 페이지로 이동하여 정의된 비밀번호 및 구성 맵 목록을 확인합니다. 필터를 적용하여 필요에 맞게 목록을 사용자 정의할 수 있습니다.
이미지를 빌드할 때 액세스를 작성할 수 있습니다.
CLI를 사용하여 개인용 저장소 액세스 추가
CLI 버전 1.42.0 부터는 CLI에서 비밀 번호를 정의하고 작업하는 것이 secret
명령 그룹으로 통합됩니다. ibmcloud ce secret
명령을 참조하십시오. --format
옵션을 사용하여 basic_auth
, generic
, hmac
, ssh
, tls
또는 registry
과 같은 비밀 카테고리를 지정합니다. 명령 그룹을 계속 사용할 수 있지만 repo
명령 그룹을 계속 사용할 수 있지만, 통합된 secret
명령 그룹을 활용하세요. GitHub 또는 GitLab, 같은 Git 리포지토리에 인증하는 것과 같이 SSH 키를 사용하여 서비스에 액세스하기 위한 비밀번호를 만들려면 다음 ibmcloud ce secret create --format ssh
명령을
사용합니다. SSH 비밀번호는 Git 리포지토리 액세스 비밀번호로도 사용됩니다. Code Engine 에서 비밀 번호로 작업하는 방법에 대해 자세히 알아보려면 비밀 번호로 작업하기를 참조하세요.
SSH 비밀번호에는 컨테이너 이미지를 빌드하기 위한 소스 코드가 포함된 비공개 리포지토리에 액세스할 수 있는 자격 증명이 포함되어 있습니다. SSH 비밀번호는 Git 리포지토리 액세스 비밀번호로도 사용됩니다.
CLI를 사용하여 SSH 시크릿을 작성하려면 secret create --format ssh
명령을 사용하십시오. 이 명령은 이름 및 키 경로를 필요로 하며 알려진 호스트 파일에 대한 경로와 같은 기타 선택적 인수도 허용합니다. 전체 옵션 목록은 ibmcloud ce secret create --format ssh
명령을 참조하십시오.
예를 들어, 다음 명령은 시스템의 기본 위치에 있는 개인 SSH 개인 키를 사용하는 github.com
리포지토리에 myrepossh
이라는 SSH 비밀을 만듭니다.
Mac OS 또는 Linux®
ibmcloud ce secret create --format ssh --name myrepossh --key-path $HOME/.ssh/id_rsa --known-hosts-path $HOME/.ssh/known_hosts
Windows
ibmcloud ce secret create --format ssh --name myrepossh --key-path "%HOMEPATH%\.ssh\id_rsa" --known-hosts-path "%HOMEPATH%\.ssh\known_hosts"
다음 표에는 이 예에서 repo create
명령과 함께 사용되는 옵션이 요약되어 있습니다. 명령 및 해당 옵션에 대한 자세한 정보는 ibmcloud ce repo create
명령을 참조하십시오.
옵션 | 설명 |
---|---|
--name |
ssh 본인확인정보 이름. 프로젝트 내에서 고유한 이름을 사용하십시오. 이 값은 필수입니다.
|
--key-path |
암호화되지 않은 개인용 SSH 키의 로컬 경로입니다. 개인용 개인 SSH 키를 사용하는 경우 이 파일은 보통 $HOME/.ssh/id_rsa (Mac OS 또는 Linux) 또는 %HOMEPATH%.ssh\id_rsa (Windows)에 있습니다. 이 값은 필수입니다. |
--known-hosts-path |
알려진 호스트 파일의 경로입니다. 이 값은 개인 키가 이전에 액세스한 호스트(특히 GitHub 또는 GitLab 호스트)에서 인증하는 데만 사용되도록 하는 보안 기능입니다. 이 파일은 보통 $HOME/.ssh/known_hosts (Mac OS 또는 Linux) 또는 %HOMEPATH%.ssh\known_hosts (Windows)에 있습니다. |
빌드에서 개인용 Git 저장소 참조
콘솔에서 이미지를 빌드할 때 기존 액세스를 참조하거나 액세스를 작성할 수 있습니다.
콘솔의 빌드에서 개인용 Git 저장소 참조
빌드에서 개인용 Git 저장소를 참조하려면 다음을 수행하십시오.
- Code Engine 대시보드로 이동하십시오.
- 프로젝트를 선택하거나 프로젝트를 작성하십시오.
- 프로젝트 페이지에서 이미지 빌드를 클릭하십시오.
- 이미지 빌드 탭에서 작성을 클릭하십시오.
- 개인용 저장소를 지정하고 액세스를 추가하려면 코드 저장소 URL 필드에 저장소의 URL을 입력한 후 기존 코드 저장소 액세스를 선택하거나 액세스 작성을 선택하십시오.
- 빌드에 대한 정보 지정을 완료하고 완료를 클릭하십시오.
이미지 빌드에 대한 자세한 정보는 컨테이너 이미지 빌드를 참조하십시오.
코드 저장소 URL 는 https://github.ibm.com/codeengine/ui
와 같은 HTTPS URL 대신 git@github.com:IBM/CodeEngine.git
와 같은 SSH URL 여야 합니다.
CLI를 사용하여 빌드에서 SSH 시크릿 참조
빌드에서 SSH 암호를 사용하려면, 빌드 실행 시 --git-repo-secret
옵션을 사용하거나 build create
또는 build update
명령을 실행하세요. SSH 비밀번호는 Git 리포지토리 액세스 비밀번호로도 사용됩니다.
기존 빌드가 있는 경우 build update
명령을 사용하여 업데이트할 수 있습니다.
ibmcloud ce build update --name mybuild --git-repo-secret myrepossh
새 빌드를 작성하려면 CLI로 빌드 구성 작성을 참조하십시오.
Git 리포지토리 액세스를 위한 다음 단계
Git 저장소에 액세스하기 위해 SSH 시크릿을 작성한 후에는 개인 저장소의 소스 코드에서 이미지를 빌드 할 수 있습니다. --git-repo-secret
옵션과 함께 build create
명령을 실행할 때 SSH 시크릿을 지정하십시오.