기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
서버리스 애플리케이션 문제 해결
Toolkit for VS Code를 사용하여 서버리스 애플리케이션을 개발할 때 발생할 수 있는 일반적인 오류와 이러한 오류를 해결하는 방법에 대해 자세히 설명합니다.
주제
- SAM 시작 구성에서 samconfig.toml을 어떻게 사용할 수 있을까요?
- "RuntimeError: Container does not exist" 오류가 발생합니다.
- Error: "docker.errors.APIError: 500 Server Error ... 풀 레이트 리미트에 도달했습니다.”
- Error: "500 Server Error: Mounting C:\Users\..."
- WSL을 사용하면 웹 뷰 (예: “AWS의 Invoke” 형식) 가 깨집니다.
- TypeScript 애플리케이션을 디버깅하고 있지만 중단점이 작동하지 않습니다.
SAM 시작 구성에서 samconfig.toml을 어떻게 사용할 수 있을까요?
sam.localArguments
시작 구성의 속성에 --config-file
인수를 구성하여 SAM CLI samconfig.toml의 위치를 지정합니다. 예를 들어 samconfig.toml 파일이 작업 공간의 상위 레벨에 있다면
"sam": { "localArguments": ["--config-file", "${workspaceFolder}/samconfig.toml"], }
"RuntimeError: Container does not exist" 오류가 발생합니다.
시스템에 Docker 컨테이너 디스크 공간이 충분하지 않은 경우 sam build
명령이 이 오류를 표시합니다. 시스템의 사용 가능한 저장공간이 1~2GB라면 빌드가 시작되기 전에 시스템 저장공간가 가득 차지 않았더라도 처리 중에 sam build
가 실패할 수 있습니다. 자세한 내용은 GitHub issue
Error: "docker.errors.APIError: 500 Server Error ... 풀 레이트 리미트에 도달했습니다.”
Docker Hub는 익명 사용자의 요청을 제한합니다. 시스템이 리미트에 도달하면 Docker는 실행되지 않고 VS Code의 OUTPUT 보기에 다음 오류가 나타납니다.
docker.errors.APIError: 500 Server Error: Internal Server Error ("toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit")
시스템 Docker 서비스가 Docker Hub 자격 증명의 인증을 받았는지 확인하세요.
Error: "500 Server Error: Mounting C:\Users\..."
Windows 사용자는 AWS SAM 애플리케이션을 디버깅할 때 다음과 같은 Docker 마운트 오류를 볼 수 있습니다.
Fetching lambci/lambda:nodejs10.x Docker container image...... 2019-07-12 13:36:58 Mounting C:\Users\<username>\AppData\Local\Temp\ ... as /var/task:ro,delegated inside runtime container Traceback (most recent call last): ... requests.exceptions.HTTPError: 500 Server Error: Internal Server Error ...
(Docker 설정에서) 공유 드라이브의 자격 증명을 새로 고침 하세요.
WSL을 사용하면 웹 뷰 (예: “AWS의 Invoke” 형식) 가 깨집니다.
Cisco VPN 사용자라면 아는 VS Code 문제입니다. 자세한 내용은 GitHub issue
WSL 트래킹 문제
TypeScript 애플리케이션을 디버깅하고 있지만 중단점이 작동하지 않습니다.
컴파일된 JavaScript 파일과 소스 TypeScript 파일을 연결하는 소스 맵이 없는 경우에 발생합니다. 이 문제를 해결하려면 tsconfig.json
파일을 열고 다음 옵션과 값이 설정되어 있는지 확인하세요: "inlineSourceMap": true
.