3.2. 프로젝트 구성
각 사용자에 대해 OpenShift Dev Spaces는 프로젝트의 작업 공간을 격리합니다. OpenShift Dev Spaces는 레이블 및 주석이 있는 사용자 프로젝트를 식별합니다. 작업 영역을 시작할 때 필요한 프로젝트가 없는 경우 OpenShift Dev Spaces는 템플릿 이름을 사용하여 프로젝트를 생성합니다.
다음을 통해 OpenShift Dev Spaces 동작을 수정할 수 있습니다.
3.2.1. 프로젝트 이름 구성
OpenShift Dev Spaces에서 작업 공간을 시작할 때 필요한 프로젝트를 생성하는 데 사용하는 프로젝트 이름 템플릿을 구성할 수 있습니다.
유효한 프로젝트 이름 템플릿은 다음과 같은 규칙을 따릅니다.
-
<
;username>
또는 <userid&
gt; 자리 표시자는 필수입니다. -
사용자 이름과 ID에는 잘못된 문자를 포함할 수 없습니다. 사용자 이름 또는 ID 형식이 OpenShift 오브젝트의 이름 지정 규칙과 호환되지 않는 경우 OpenShift Dev Spaces는 호환되지 않는 문자를
-
기호로 교체하여 사용자 이름 또는 ID를 유효한 이름으로 변경합니다. -
OpenShift Dev Spaces는 <
userid
> 자리 표시자를 14자 긴 문자열로 평가하고 ID가 충돌하지 않도록 임의의 6자 길이 접미사를 추가합니다. 결과는 재사용을 위해 사용자 기본 설정에 저장됩니다. - Kubernetes는 프로젝트 이름의 길이를 63자로 제한합니다.
- OpenShift는 길이를 49자로 더 제한합니다.
프로세스
CheCluster
사용자 정의 리소스를 구성합니다. 3.1.2절. “CLI를 사용하여 CheCluster 사용자 정의 리소스 구성”을 참조하십시오.spec: components: devEnvironments: defaultNamespace: template: <workspace_namespace_template_>
예 3.3. 사용자 작업 공간 프로젝트 이름 템플릿 예
사용자 작업 공간 프로젝트 이름 템플릿 결과 프로젝트 예 <username>-devspaces
(기본값)user1-devspaces
<userid>-namespace
cge1egvsb2nhba-namespace-ul1411
<userid>-aka-<username>-namespace
cgezegvsb2nhba-aka-user1-namespace-6m2w2b
3.2.2. 사전 프로비저닝 프로젝트
자동 프로비저닝을 사용하는 대신 작업 공간 프로젝트를 사전에 프로비저닝할 수 있습니다. 각 사용자에 대해 절차를 반복합니다.
프로세스
CheCluster
수준에서 자동 네임스페이스 프로비저닝을 비활성화합니다.devEnvironments: defaultNamespace: autoProvision: false
다음 라벨 및 주석을 사용하여 < username > 사용자에 대한 <project_name > 프로젝트를 생성합니다.
kind: Namespace apiVersion: v1 metadata: name: <project_name> 1 labels: app.kubernetes.io/part-of: che.eclipse.org app.kubernetes.io/component: workspaces-namespace annotations: che.eclipse.org/username: <username>
- 1
- 선택한 프로젝트 이름을 사용합니다.