디버깅 트리오
실행 중인 container 에 뭔가 잘못됐을 때, 명령 셋이 질문의 90% 에 답해.
docker logs — 첫 정거장
메인 process 가 stdout/stderr 에 쓰는 건 다 잡혀. 무조건 logs 부터 봐 — 대부분 거기 보여.
docker exec — 안에 들어가
docker exec 는 이미 실행 중인 container 안에서 새 process 돌려. docker run 이랑 달라 — run 은 새 container 만듦. 쑤시고 다닐 땐 exec: ls, ps, cat /etc/..., 또는 interactive shell.
docker inspect — 메타데이터 호스
container 에 대해 Docker 가 아는 모든 걸 거대한 JSON 으로 줘: state, network, mount, env var, restart count, exit code. --format 으로 Go template 써서 특정 필드 뽑아.