컨테이너 설계의 핵심은 기술이 아니라 판단이다. 컨테이너는 언제든 버리고 다시 만들 수 있어야 하고, 데이터는 컨테이너가 사라져도 살아남아야 한다. 이 두 문장 사이에 선을 어디에 긋느냐가 시스템의 운명을 결정한다.

그런데 이 경계는 코드에서 유도되지 않는다. 어떤 파일이 재생성 가능한 캐시이고 어떤 파일이 다시는 복구되지 않는 원본인지는 도메인 지식이다. AI는 문법적으로 완벽한 Compose 파일을 만들면서도 볼륨 하나를 빠뜨릴 수 있고, 그 결과는 컨테이너를 재시작하는 순간에야 드러난다. 코드 리뷰로 잡히지 않고, 테스트로도 잡히지 않는다. 파괴적 동작이 정상 동작과 구별되지 않기 때문이다.

그래서 AI에게 위임할 수 있는 것과 없는 것의 진짜 구분선은 ‘어려움’이 아니라 ‘되돌릴 수 있느냐’다. 되돌릴 수 없는 결정은 여전히 사람의 몫이다. 나는 이것이 바이브코딩의 유일한 필수 학습 항목이라고 본다.

근거

⚠️ DB나 사용자 업로드 파일처럼 영구 보관해야 할 데이터는 컨테이너 안에만 넣으면 안 됩니다. 컨테이너는 언제든 버리고 다시 만들 수 있게. 데이터는 컨테이너가 사라져도 살아남게.

원문에서 유일하게 경고 표시가 붙은 지점이 이곳이다. 나머지는 잘못돼도 다시 만들면 되지만, 이건 잘못되면 되돌릴 수 없다.

연결된 생각

출처

클리핑 · x.com