기술 · 실용 가이드
Docker mount 뒤 파일이 사라졌나요? 어떤 filesystem이 가리는지 증명하세요
Compose model을 render하고 live mount graph와 같은 image의 no-mount baseline을 비교한 뒤 rebuild·copy·delete 하세요.

빈 directory는 image 파일 삭제를 증명하지 않습니다. bind, named volume, nested mount 또는 잘못 해석된 Compose source가 image path를 가릴 수 있습니다.
data와 model을 보존하고 runtime mounts를 검사한 뒤 같은 digest의 no-mount container와 비교하세요. 원인을 분류한 뒤에만 수리하고 recreate까지 검증하세요.
1. model과 data evidence 고정
Compose, environment, cwd, context, image digest를 저장하고 source를 read-only로 열어 hash와 permission을 기록하세요.
docker compose config의 source, target, nested collision을 저장하세요.
2. live mount graph 읽기
docker inspect에서 Type, Source, Destination, RW, propagation을 읽으세요.
daemon host와 -v / --mount의 missing-source 차이를 확인하세요.
3. 같은 image의 no-mount baseline 비교
같은 digest로 의심 mount 없는 disposable container를 만들어 target을 확인하세요.
bind source나 volume의 파일, hash, owner, mode와 nested target을 비교하세요.
4. mechanism 분류 후 수리
bind는 merge하지 않고 새 empty volume은 기본적으로 한 번 copy-up하며 reused volume은 기존 내용을 유지합니다.
Source가 예상과 다르면 reseed 대신 base/project path를 고치세요.
5. persistence 증명
persistent path를 install tree와 분리하고 seed는 idempotent versioned migration으로 만드세요.
첫 시작과 두 번째 restart/recreate, hash, ownership, write persistence, wrong path 무변경을 검증하세요.
