Visual Studio Container Tools 구성
Visual Studio 설정을 사용하면 Docker 컨테이너 작업 시 성능과 리소스 사용량에 영향을 주는 설정을 포함하여 Visual Studio에서 Docker 컨테이너를 사용하는 방식의 몇 가지 측면을 제어할 수 있습니다.
컨테이너 도구 설정
주 메뉴에서 도구 > 옵션을 선택하고, 컨테이너 도구 > 설정을 확장합니다. 그러면 컨테이너 도구 설정이 표시됩니다.
컨테이너 도구 일반 설정:
컨테이너 도구 단일 프로젝트 및 Docker Compose 설정:
다음 표는 이러한 옵션을 설정하는 방법을 결정하는 데 도움이 될 수 있습니다.
다음 표에서는 일반 설정에 대해 설명합니다.
이름 | 기본 설정 | 적용 대상 | 설명 |
---|---|---|---|
필요한 경우 Docker Desktop 설치 | 메시지 표시 | 단일 프로젝트, Docker Compose | Docker Desktop이 설치되어 있지 않은 경우 메시지를 표시할지 여부를 선택합니다. |
ASP.NET Core SSL 인증서 신뢰 | 메시지 표시 | ASP.NET Core 2.x 프로젝트 | 메시지 표시로 설정된 경우 localhost SSL 인증서를 신뢰할 수 없으면 ASP.NET Core 2.x 프로젝트를 실행할 때마다 Visual Studio에서 메시지가 표시됩니다. |
다음 표에서는 단일 프로젝트 및 Docker Compose 설정에 대해 설명합니다.
이름 | 기본 설정 | 적용 대상 | 설명 |
---|---|---|---|
프로젝트를 열 때 필요한 Docker 이미지 풀하기 | True | 단일 프로젝트, Docker Compose | 프로젝트를 로드할 때 성능을 향상하기 위해 Visual Studio는 백그라운드에서 Docker 끌어오기 작업을 수행합니다. 이렇게 하면 코드를 실행할 준비가 되었을 때 이미지가 이미 다운로드되어 있거나 다운로드 중입니다. 프로젝트를 로드하고 코드를 검색하기만 하는 경우에는 불필요한 컨테이너 이미지를 다운로드하지 않도록 False로 설정할 수 있습니다. |
프로젝트를 열 때 업데이트된 Docker 이미지 풀하기 | .NET Core 프로젝트 | 단일 프로젝트, Docker Compose | 프로젝트를 열 때 이미지에 대한 업데이트를 확인하고 사용 가능한 경우 다운로드합니다. |
프로젝트를 열 때 컨테이너 실행 | True | 단일 프로젝트, Docker Compose | 마찬가지로 성능 향상을 위해, Visual Studio는 준비된 상태에서 컨테이너를 빌드하고 실행할 수 있도록 컨테이너를 미리 만듭니다. 컨테이너를 만드는 시기를 제어하려면 False로 설정합니다. |
프로젝트를 닫을 때 컨테이너 제거 | True | 단일 프로젝트, Docker Compose | 솔루션을 닫거나 Visual Studio를 닫은 후에도 솔루션의 컨테이너를 계속 유지하려면 False로 설정합니다. |
이름 | 기본 설정 | 적용 대상 | 설명 |
---|---|---|---|
프로젝트를 열 때 필요한 Docker 이미지 풀하기 | True | 단일 프로젝트, Docker Compose | 프로젝트를 로드할 때 성능을 향상하기 위해 Visual Studio는 백그라운드에서 Docker 끌어오기 작업을 수행합니다. 이렇게 하면 코드를 실행할 준비가 되었을 때 이미지가 이미 다운로드되어 있거나 다운로드 중입니다. 프로젝트를 로드하고 코드를 검색하기만 하는 경우에는 불필요한 컨테이너 이미지를 다운로드하지 않도록 False로 설정할 수 있습니다. |
프로젝트를 열 때 업데이트된 Docker 이미지 풀하기 | .NET Core 프로젝트 | 단일 프로젝트, Docker Compose | 프로젝트를 열 때 이미지에 대한 업데이트를 확인하고 사용 가능한 경우 다운로드합니다. |
프로젝트를 열 때 컨테이너 실행 | True | 단일 프로젝트, Docker Compose | 마찬가지로 성능 향상을 위해, Visual Studio는 준비된 상태에서 컨테이너를 빌드하고 실행할 수 있도록 컨테이너를 미리 만듭니다. 컨테이너를 만드는 시기를 제어하려면 False로 설정합니다. |
프로젝트를 닫을 때 컨테이너 제거 | True | 단일 프로젝트, Docker Compose | 솔루션을 닫거나 Visual Studio를 닫은 후에도 솔루션의 컨테이너를 계속 유지하려면 False로 설정합니다. |
컨테이너에서 서비스를 실행하여 Azure 인증을 사용하도록 설정하기 | True | 단일 프로젝트, Docker Compose | Visual Studio 버전 17.6 이상에서는 개발 중에 앱이 Azure 서비스를 사용할 수 있도록 Azure 인증을 지원하는 토큰 프록시 서비스를 컨테이너에서 실행합니다. False 이 서비스를 설치하고 실행하지 않으려면 설정합니다. |
컨테이너에서 서비스를 실행하여 핫 리로드 활성화하기 | True | 단일 프로젝트, Docker Compose | False 이 서비스를 설치하고 실행하지 않으려면 설정합니다. 핫 다시 로드 서비스는 Visual Studio 2022 버전 17.7 이상에서 사용할 수 있으며 디버깅 없이 실행만 지원합니다(Ctrl+F5). |
컨테이너 도구 창 설정은 Docker 컨테이너 및 이미지에 대한 정보를 보여 주는 컨테이너 도구 창에 적용되는 설정을 제어합니다. 컨테이너 창 사용을 참조하세요.
다음 표는 컨테이너 창 설정을 설명합니다.
이름 | 기본 설정 | 설명 |
---|---|---|
컨테이너를 정리하기 전에 확인 | 항상 | 사용되지 않은 컨테이너를 정리할 때 메시지의 표시 여부를 제어합니다. |
이미지를 정리하기 전에 확인 | 항상 | 사용되지 않은 이미지를 정리할 때 메시지의 표시 여부를 제어합니다. |
컨테이너를 제거하기 전에 확인 | 항상 | 컨테이너를 제거할 때 메시지의 표시 여부를 제어합니다. |
이미지를 제거하기 전에 확인 | 항상 | 이미지를 제거할 때 메시지의 표시 여부를 제어합니다. |
다수의 이미지를 실행하기 전에 확인 | 항상 | 10개가 넘는 이미지에서 컨테이너를 동시에 시작하기 전에 메시지의 표시 여부를 제어합니다. |
Warning
localhost
SSL 인증서를 신뢰할 수 없고, 메시지를 표시하지 않는 확인란을 선택한 경우 런타임에 앱 또는 서비스에서 HTTPS 웹 요청이 실패할 수 있습니다. 이 경우 메시지 표시 안 함 확인란을 선택 취소하고, 프로젝트를 실행한 후 프롬프트에서 신뢰를 표시합니다.
Azure 인증 구성
앱이 Azure 서비스를 사용하는 경우, 컨테이너에서 실행할 때 적절한 인증 자격 증명이 있어야 Azure 서비스에서 인증할 수 있습니다. 개발 중에는 일반적으로 앱이 프로덕션에서 사용하는 자격 증명 대신 자체 Azure 자격 증명을 사용할 수 있지만 컨테이너 환경에서는 컨테이너화된 앱을 실행하는 데 유용하게 사용하려면 해당 자격 증명이 필요합니다.
Visual Studio 2022 버전 17.6부터 단일 컨테이너 및 Docker Compose 프로젝트 모두에서 토큰 프록시 서비스가 배포되고 Azure에서 앱 및 서비스를 인증하는 데 도움이 되는 컨테이너에서 실행됩니다. 이 기능을 사용하려면 Azure Identity 1.9.0 이상이 필요합니다. 이 서비스를 사용하도록 설정하면 컨테이너 내에서 추가 구성이나 설정 없이 대부분의 Azure 서비스를 자동으로 사용할 수 있습니다. 특히 코드는 컨테이너 외부와 VisualStudioCredential
동일한 방식으로 Azure 서비스를 사용하고 DefaultAzureCredential
인증할 수 있습니다. Azure Identity 1.9.0 추가 정보 참조
이 기능을 사용하지 않도록 설정하려면 컨테이너>에서 서비스 실행 도구 옵션을 설정하여 Azure 인증을 사용하도록 설정합니다(이 문서의 앞부분에서 설명).False
주의
토큰 프록시를 사용하고 특정 컨테이너 도구 진단 로그를 활성화한 경우 잠재적인 보안 문제가 발생할 수 있습니다. 로깅이 활성화되면 인증 자격 증명이 일반 텍스트로 기록될 수 있습니다. 이러한 로그는 특정 환경 변수에 의해 활성화됩니다. 단일 컨테이너 프로젝트의 경우 환경 변수는 MS_VS_CONTAINERS_TOOLS_LOGGING_ENABLED
이며 %tmp%\Microsoft.VisualStudio.Containers.Tools
에 로그됩니다. Docker Compose 프로젝트의 MS_VS_DOCKER_TOOLS_LOGGING_ENABLED
경우 로그인합니다 %tmp%\Microsoft.VisualStudio.DockerCompose.Tools
.
관련 콘텐츠
개요에서 Visual Studio의 컨테이너 작업에 대해 자세히 알아봅니다.