프로젝트 및 편집기 설정 사용자 지정

완료됨

에이전시의 프로젝트 중 하나에 대한 개발 컨테이너를 설정했습니다. 이제 Docker 및 Dev Containers 확장이 있는 모든 사용자에게 "작동"됩니다. 여전히 의존성을 설치해야 합니다. 모르는 일부 Visual Studio Code 확장이 필요할 수도 있습니다.

다행히 devcontainer.json 파일을 사용하여 모든 프로젝트 설정을 완전히 사용자 지정하고 자동화할 수 있습니다.

devcontainer.json 자세히 살펴보기

제품 대시보드 프로젝트에서 파일의 기본 옵션을 .devcontainer/devcontainer.json 살펴보겠습니다. 한 번에 보는 것이 조금 길기 때문에 섹션에서 살펴보겠습니다.

빌드 구성

이 속성은 image 컨테이너 이미지라고 하는 것을 기반으로 컨테이너를 만드는 방법을 정의합니다.

"image": "mcr.microsoft.com/devcontainers/python:0-3.11"
},

이 이미지는 devcontainers/images 리포지토리에서 호스트되며 여기서 추가로 확인할 수 있습니다. 이 리포지토리의 이미지는 모두 미리 빌드된 이미지로, 워크플로 속도를 향상시키고 구성을 더 .devcontainer/devcontainer.json 간단하게 만듭니다.

Dockerfile 또는 Docker Compose 파일이라고 하는 파일을 사용하여 설정을 구성할 수도 있습니다. 이러한 파일은 폴더 .devcontainer 에 저장되며 추가 소프트웨어 설치와 같은 특정 설정 요구 사항을 추가로 구성할 수 있습니다. 개발 컨테이너 설명서에서 자세히 알아볼 수 있습니다.

기능

개발 컨테이너 기능은 자체 포함되고 공유 가능한 설치 코드 단위 및 개발 컨테이너 구성입니다. 이름은 그 중 하나를 참조하면 사용자 또는 협력자가 사용할 수 있도록 개발 컨테이너에 도구, 런타임 또는 라이브러리 "기능"을 빠르고 쉽게 추가할 수 있다는 아이디어에서 비롯되었습니다.

VS Code 명령 Dev Containers: 개발 컨테이너 구성 파일 추가를 사용하는 경우 Git 또는 Azure CLI 설치와 같은 기존 개발 컨테이너 구성을 사용자 지정하는 스크립트 목록이 표시됩니다.

프로젝트 설정

파일의 이후 섹션에서는 프로젝트 구성을 직접 다룹니다.

customizations 는 VS Code 및 GitHub Codespaces와 같은 개발 컨테이너를 지원하는 제품에 대한 제품별 속성을 설정합니다.

예를 들어 컴퓨터별 설정을 컨테이너에 복사하도록 설정할 vscode.settings 수 있습니다. 사용자 고유의 Visual Studio Code 설정에 이러한 설정이 있을 수 있습니다. 이 프로젝트를 여는 settings모든 사용자가 이러한 특정 VS Code 설정을 가져오도록 합니다.

이 Python 컨테이너의 기본 이미지mcr.microsoft.com/devcontainers/python:0-3.11에서 이러한 설정을 볼 수 있습니다. 사용자에게 향상된 Python 편집 환경을 제공합니다.

  • 속성 내의 배열을 extensionscustomizations.vscode 사용하여 컨테이너에 연결할 때 Visual Studio Code에 설치해야 하는 Visual Studio Code 확장을 지정할 수 있습니다. 일반적인 Visual Studio Code 설정 및 개발자 컨테이너를 사용할 때 이미 가지고 있는 모든 확장은 존재하지 않습니다. 확장은 ID와 함께 여기에 지정됩니다.

postCreateCommand

postCreateCommand 속성을 사용하면 컨테이너를 만든 후 원하는 모든 명령을 실행할 수 있습니다. 첫 번째 연습에서 기억한다면 종속성을 설치하는 명령을 실행 pip3 해야 했습니다. 하지만 그렇게 하려면 어떻게 알 수 있을까요? 그렇지 않을 수도 있습니다. 자동으로 수행되고 다른 사용자가 걱정할 필요가 없도록 여기에서 구성할 수 있습니다.

다음 연습에서는 devcontainer.json 파일을 수정하여 다른 개발자가 즉시 성공하도록 설정하는 프로젝트의 여러 측면을 자동화합니다.