최근 Windows 환경에서 Docker를 사용해 Python Django 앱을 실행하던 중 예상치 못한 문제가 발생했습니다. uWSGI를 통해 서버를 구동하려고 했으나, 아래와 같은 에러 메시지가 출력되었습니다
Thu Nov 21 16:29:43 2024 - *** uWSGI listen queue of socket ":8000" (fd: 3) full !!! (18956672/16384) ***
문제 상황
Docker Desktop for Windows와 WSL 2를 사용 중이었으며, Ubuntu 배포판을 기본 WSL 환경으로 설정해 Docker 컨테이너를 실행하고 있었습니다. 하지만 위와 같은 에러가 지속적으로 발생하며 컨테이너가 제대로 작동하지 않았습니다.
해결 과정
이 문제를 해결하기 위해 다음 단계를 진행했습니다:
-
- WSL 설정 확인 및 수정
- Docker Desktop 설정에서 Resources > WSL integration 항목을 확인했습니다.
- 아래 이미지처럼 기본 WSL 통합 설정이 활성화되어 있었고, 추가로 Ubuntu 배포판도 통합 대상으로 설정되어 있었습니다.
- WSL 설정 확인 및 수정
- Refetch Distros
- "Refetch distros" 버튼을 클릭해 WSL 통합 배포판 정보를 다시 가져왔습니다.
- Docker 재시작
- Docker Desktop을 완전히 종료하고 다시 실행했습니다.
- 컨테이너 및 이미지 초기화
- 문제를 일으킨 컨테이너를 중지하고 삭제했습니다.
- 관련 이미지를 모두 삭제한 후, docker-compose를 사용해 빌드를 새로 진행했습니다.
결과
위 단계를 수행한 후 uWSGI 관련 에러가 더 이상 발생하지 않았습니다. Django 앱은 정상적으로 실행되었고, Docker와 WSL 통합 설정의 문제가 원인이었음을 확인할 수 있었습니다.
결론
Windows에서 Docker와 WSL 2를 활용할 때, 설정 불일치로 인해 다양한 문제가 발생할 수 있습니다. 특히 WSL 통합 설정과 관련하여 문제가 발생했을 경우:
- WSL 통합 설정을 확인 및 업데이트
- Docker Desktop 재시작
- 컨테이너와 이미지를 초기화하고 새로 빌드
'Trouble Shooting > Infra' 카테고리의 다른 글
SQL Server Management Studio(SSMS) 설정에 실패했거나 컴퓨터를 다시 시작해야 합니다. (1) | 2024.09.24 |
---|---|
FTP 21번 포트 패시브 모드 설정 가이드 (1) | 2024.09.02 |
FTP 서버 설정 문제 해결 가이드: 21번 포트와 22번 포트에서의 디렉토리 접근 문제 (0) | 2024.09.02 |
Docker too many requests: You have reached your pull rate limit. Amazon Linux 2 이미지 pull 에러 해결 (0) | 2024.08.21 |
[rejected] main -> main (fetch first) error: failed to push some refs to (0) | 2024.08.16 |