개발 환경을 위한 devfile 구성 - Amazon CodeCatalyst

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

개발 환경을 위한 devfile 구성

devfile은 팀 전체에서 개발 환경을 사용자 지정하는 데 도움이 되는 개방형 표준입니다. devfile은 필요한 개발 도구를 코드화하는 YAML 파일입니다. devfile을 구성하면 필요한 프로젝트 도구 및 애플리케이션 라이브러리를 미리 결정하고 Amazon이 이를 Dev Environment에 CodeCatalyst 설치할 수 있습니다. devfile은 생성된 리포지토리에 따라 다르며 각 리포지토리에 대해 별도의 devfile을 생성할 수 있습니다. Dev Environment는 명령 및 이벤트를 지원하며 기본 범용 디브파일 이미지를 제공합니다.

빈 청사진을 사용하여 프로젝트를 생성하는 경우 devfile을 수동으로 생성할 수 있습니다. 다른 청사진을 사용하여 프로젝트를 생성하는 경우 는 devfile을 자동으로 CodeCatalyst 생성합니다. Dev Environment의 /projects 디렉터리는 소스 리포지토리 및 devfile에서 가져온 파일을 저장합니다. Dev Environment를 처음 생성할 때 비어 있는 /home 디렉터리는 Dev Environment를 사용하는 동안 생성한 파일을 저장합니다. 개발 환경의 /projects/home 디렉터리에 있는 모든 것은 영구적으로 저장됩니다.

참고

/home 폴더는 devfile 또는 devfile 구성 요소 이름의 이름을 변경하는 경우에만 변경됩니다. devfile 또는 devfile 구성 요소 이름을 변경하면 /home 디렉터리의 내용이 대체되고 이전 /home 디렉터리 데이터를 복구할 수 없습니다.

루트에 devfile이 포함되지 않은 소스 리포지토리로 Dev Environment를 생성하거나 소스 리포지토리 없이 Dev Environment를 생성하는 경우 기본 범용 devfile이 소스 리포지토리에 자동으로 적용됩니다. 모든 에 동일한 기본 범용 devfile 이미지가 사용됩니다IDEs. CodeCatalyst 현재 는 devfile 버전 2.0.0을 지원합니다. devfile에 대한 자세한 내용은 Devfile 스키마 - 버전 2.0.0을 참조하세요.

참고

Devfile에는 퍼블릭 컨테이너 이미지만 포함할 수 있습니다.

VPC-connected Dev Environments는 다음 디브파일 이미지만 지원합니다.

  • 범용 이미지

  • 리포지토리가 와 동일한 리전에 있는 경우 프라이빗 Amazon ECR 이미지 VPC

에서 지원하는 Devfile 기능 CodeCatalyst

CodeCatalyst 는 버전 2.0.0에서 다음과 같은 devfile 기능을 지원합니다. devfile에 대한 자세한 내용은 Devfile 스키마 - 버전 2.0.0을 참조하세요.

기능 유형

exec

Command

postStart

Event

container

구성 요소

args

구성 요소 속성

env

구성 요소 속성

mountSources

구성 요소 속성

volumeMounts

구성 요소 속성

개발 환경용 devfile의 예

다음은 간단한 devfile의 예입니다.

schemaVersion: 2.0.0 metadata: name: al2 components: - name: test container: image: public.ecr.aws/amazonlinux/amazonlinux:2 mountSources: true command: ['sleep', 'infinity'] - name: dockerstore commands: - id: setupscript exec: component: test commandLine: "chmod +x script.sh" workingDir: /projects/devfiles - id: executescript exec: component: test commandLine: "/projects/devfiles/script.sh" - id: yumupdate exec: component: test commandLine: "yum -y update --security" events: postStart: - setupscript - executescript - yumupdate

Devfile 시작, 명령 및 이벤트 로그는 캡처되어 에 저장됩니다/aws/mde/logs. devfile 동작을 디버깅하려면 작업 devfile을 사용하여 Dev Environment를 시작하고 로그에 액세스합니다.

복구 모드를 사용하여 리포지토리 디브파일 문제 해결

devfile을 시작하는 데 문제가 있는 경우 복구 모드로 전환되므로 환경에 계속 연결하고 devfile을 수정할 수 있습니다. 복구 모드에 있는 동안 실행/aws/mde/mde status에는 devfile의 위치가 포함되지 않습니다.

{ "status": "STABLE" }

의 로그에서 오류를 확인하고, devfile을 /aws/mde/logs수정한 다음, /aws/mde/mde start 다시 실행을 시도할 수 있습니다.