컴퓨터 활용/노년에 즐기는 코딩

윈도우 환경에서 Docker 프로젝트(simadang-docker)

easyfly 2025. 8. 23. 09:32
반응형

윈도우 환경에서 Docker 프로젝트(simadang-docker)를 실행하려면 몇 가지 주의해야 할 점이 있습니다. 다음 화면은 Git Bash(MINGW64)에서 ls로 디렉토리 구조를 확인한 상태이고, Dockerfile, docker-compose.yml, requirements.txt 등이 준비되어 있습니다. 


1. 윈도우에서 Docker Desktop 설치

  • Windows에서는 리눅스처럼 직접 Docker를 설치하지 않고 Docker Desktop을 설치하는 것이 일반적입니다.
  • Docker Desktop for Windows을 설치하세요.
  • WSL2(Windows Subsystem for Linux 2) 또는 Hyper-V 기반에서 컨테이너를 실행합니다.
    → 보통 WSL2를 권장합니다.


2. 프로젝트 실행 기본 명령어

프로젝트 루트(simadang-docker)에서 아래 명령어를 실행합니다.

# 이미지 빌드
docker-compose build

# 컨테이너 실행
docker-compose up -d

# 로그 확인
docker-compose logs -f

# 실행 중 컨테이너 목록 확인
docker ps

3. 윈도우에서 자주 발생하는 문제와 해결법

  1. 경로 문제 (CRLF vs LF)
    • 윈도우는 기본적으로 CRLF 줄바꿈을 쓰지만, Docker/Linux는 LF를 기대합니다.
    • Dockerfile이나 entrypoint.sh 같은 스크립트에 CRLF가 들어가면 exec format error 발생.
    • 해결: Git에서 체크아웃할 때 LF 유지
    • git config --global core.autocrlf false
  2. 볼륨 마운트 문제
    • docker-compose.yml에서 volumes를 지정했을 때 윈도우 경로와 리눅스 경로 차이로 에러가 날 수 있습니다.
    • Git Bash에서는 /c/Users/... 형식으로 적어야 하고, PowerShell에서는 C:\Users\... 형식으로 적습니다.
    • 가능하다면 상대경로(./app:/app)로 설정하는 것이 안전합니다.
  3. 포트 충돌
    • 윈도우에서 80, 443 포트는 다른 프로그램(IIS, Skype 등)이 점유하는 경우가 많습니다.
    • docker-compose.yml에서 포트를 8000:8000 같은 것으로 바꾸는 것이 좋습니다.

4. 실행 확인

컨테이너가 정상적으로 실행되면 브라우저에서 확인합니다.

예:
http://localhost:8000(Django 서버를 8000번 포트에 매핑했을 경우)


5. 요약

  • 윈도우에서는 Docker Desktop 필수
  • LF 줄바꿈 유지, 볼륨 경로 주의
  • docker-compose로 빌드 → 실행 → 로그 확인
  • 포트 충돌 시 다른 포트로 매핑

 

반응형