C.W.K.
Stream
Lesson 04 of 05 · published

Bind Mount — Dev 루프 트릭

~14 min · data, development

Level 0Container 호기심
0 XP0/36 lessons0/10 achievements
0/120 XP to next level120 XP to go0% complete

호스트에서 편집, container 에서 실행

Bind mount 는 호스트 디렉토리를 container 에 직접 매핑. 파일 양쪽에 즉시 보여. Hot-reload aware framework (uvicorn --reload, vite, nodemon) 랑 같이 쓰면, 호스트엔 진짜 IDE, container 엔 runtime — 코드 변경마다 image rebuild 없이.

:ro 변경자

Mount 끝에 :ro 붙이면 container 안에서 read-only. config 파일, 인증서, container 가 소비만 하고 수정 안 해야 하는 거 — 모두 이거 써. 가벼운 방어 심화.

Code

Hot-reload dev container·bash
docker run -d --name api \
  -v $(pwd):/app \
  -v /app/__pycache__ \
  -p 8000:8000 \
  python:3.12-slim \
  sh -c "cd /app && pip install -r requirements.txt && uvicorn main:app --reload --host 0.0.0.0"

# Edit main.py on host. Save. uvicorn reloads inside the container.
# The anonymous volume on /app/__pycache__ keeps that ugly noise from
# polluting your host filesystem.
Read-only config·bash
docker run -d \
  -v $(pwd)/config.yaml:/app/config.yaml:ro \
  -v /etc/ssl/certs:/etc/ssl/certs:ro \
  myapp

External links

Exercise

Python 또는 Node 앱에 bind-mount dev 워크플로 셋업: 저장 시 hot-reload. image rebuild 없이 코드 변경하고, 실행 중인 container 동작에 보이는 거 확인. Run 명령 캡처.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.