6.2. 자체 프로비저닝 프로젝트
개발자가 자신의 프로젝트를 만들 수 있도록 허용할 수 있습니다. 템플릿에 따라 프로젝트를 프로비저닝할 엔드포인트가 있습니다 . 개발자가 새 프로젝트를 생성할 때 웹 콘솔 및 oc new-project
명령은 이 엔드포인트를 사용합니다.
6.2.1. 새 프로젝트의 템플릿 수정
API 서버는 master-config.yaml 파일의 projectRequestTemplate
매개 변수로 식별된 템플릿을 기반으로 프로젝트를 자동으로 프로비저닝합니다. 매개 변수가 정의되지 않은 경우 API 서버는 요청된 이름으로 프로젝트를 생성하는 기본 템플릿을 생성하고 요청하는 사용자를 해당 프로젝트의 "admin" 역할에 할당합니다.
사용자 정의 프로젝트 템플릿을 만들려면:
현재 기본 프로젝트 템플릿으로 시작합니다.
$ oc adm create-bootstrap-project-template -o yaml > template.yaml
- 텍스트 편집기를 사용하여 오브젝트를 추가하거나 기존 오브젝트를 수정하여 template.yaml 파일을 수정합니다.
템플릿을 로드합니다.
$ oc create -f template.yaml -n default
로드된 템플릿을 참조하도록 master-config.yaml 파일을 수정합니다.
... projectConfig: projectRequestTemplate: "default/project-request" ...
프로젝트 요청을 제출하면 API에서 다음 매개변수를 템플릿으로 대체합니다.
매개변수 | 설명 |
---|---|
PROJECT_NAME | 프로젝트 이름입니다. 필수 항목입니다. |
PROJECT_DISPLAYNAME | 프로젝트의 표시 이름입니다. 비어 있을 수 있습니다. |
PROJECT_DESCRIPTION | 프로젝트에 대한 설명입니다. 비어 있을 수 있습니다. |
PROJECT_ADMIN_USER | 관리 사용자의 사용자 이름. |
PROJECT_REQUESTING_USER | 요청하는 사용자의 사용자 이름. |
API에 대한 액세스 권한은 self-provisioner 역할 및
클러스터 역할 바인딩을 사용하여 개발자에게 부여됩니다. 이 역할은 기본적으로 인증된 모든 개발자에게 제공됩니다.
self-provisioner
s