Docker로 개발 환경 세팅하다가 멘탈 터짐

프로젝트마다 노드 버전이 달라서 Docker로 개발 환경을 통일하려고 했는데, 볼륨 마운트랑 포트 매핑에서 계속 에러 나네요. 공식 문서 따라 했는데도 안 되고, 스택오버플로우 뒤져도 해결이 안 됩니다. 특히 윈도우에서 WSL2랑 도커 데스크탑 조합이 왜 이렇게 삐걱거리는지... 혹시 비슷한 경험 있으신 분 계신가요?

작성자 데이터덕후604

10 개의 답변

저도 최근에 같은 문제로 고생했어요. 윈도우 + WSL2 조합이 정말 예민하더라고요. 특히 볼륨 마운트 경로를 /mnt/c/... 대신 WSL 내부 경로로 바꾸니까 해결됐어요. 한번 시도해보세요.

작성자 무한도전러499 · ▲0

공식 문서가 항상 정답은 아니에요. 저는 Docker Compose로 포트 매핑 간소화했는데, docker-compose.ymlports: 부분을 명시적으로 적어주니까 오류 줄었어요. 윈도우는 특히 파일 권한 문제도 있으니 chmod도 확인해보시고요.

작성자 디지털노마드916 · ▲0

멘탈 터지는 거 완전 공감합니다 ㅋㅋ 저도 이틀 동안 삽질했는데, 결국 WSL2 대신 Hyper-V로 전환하니까 안정적이었어요. 도커 데스크탑 설정에서 백엔드를 Hyper-V로 바꾸는 옵션도 있으니 참고하세요.

작성자 뉴비탈출290 · ▲0

혹시 에러 로그를 볼 수 있을까요? 볼륨 마운트 에러는 경로 구분자 문제일 가능성이 높아요. 윈도우 경로에 백슬래시 대신 슬래시를 써보거나, .env 파일로 경로를 변수화해보는 것도 방법입니다.

작성자 취준생김씨609 · ▲0

저도 비슷한 경험 있어서 지금은 그냥 nvm으로 노드 버전 관리합니다. Docker까지 갈 필요 없을 때도 많아요. 프로젝트별로 .nvmrc 파일 만들면 간편하더라고요.

작성자 지나가던행인827 · ▲0

WSL2랑 도커 데스크탑 조합에서 볼륨 마운트는 진짜 골칫거리죠. 저는 docker run -v //c/Users/...:/app처럼 경로 앞에 슬래시 두 개 붙이니까 작동했어요. 시도해볼 가치 있어요.

작성자 초보개발자721 · ▲0

저도 처음에 포트 매핑에서 0.0.0.0:8080:80 이런 식으로 하다가 막혔는데, 호스트 포트를 127.0.0.1:8080:80으로 바꾸니까 됐어요. 윈도우 방화벽 문제일 수도 있으니 확인해보세요.

작성자 궁금한사람185 · ▲0

비슷한 고민으로 한 달 넘게 고생했는데, 결국 도커 데스크탑 대신 도커 엔진을 WSL2에 직접 설치했어요. 그 후로는 거의 문제 없이 잘 돌아가요. 설치법은 구글에 많으니 한번 찾아보세요.

작성자 밤샘코더399 · ▲0

저는 그냥 포기하고 VirtualBox에 우분투 띄워서 거기서 도커 돌립니다. 윈도우 네이티브 도커는 너무 스트레스라... 대신 메모리 좀 먹긴 해도 안정적이에요.

작성자 뉴비탈출243 · ▲0

힘내세요! 저도 똑같은 상황에서 스택오버플로우만 50번은 본 듯. 결국 해결책은 도커 데스크탑 설정에서 'Use WSL 2 based engine' 체크 해제하고 재설치하는 거였어요. 의외로 간단한데 시간만 잡아먹더라고요.

작성자 데이터덕후831 · ▲0