15분
"내 컴퓨터에서는 되는데요..." 를 없애는 날
Docker 배포 & 테스트
"내 컴퓨터에서는 되는데요..." 를 없애는 날
통합 프로젝트 > Docker 배포 & 테스트
학습 목표
Docker가 필요한 이유를 실감한다 컨테이너화의 핵심 가치를 이해한다
"내 컴퓨터에서는 되는데요..."
[데모 전날 리허설]

팀장: "내 노트북에서 한번 돌려볼게."
$ pip install -r requirements.txt
ERROR: 패키지 충돌!
$ pip install langchain==0.2.0
ERROR: Python 3.9에서는 지원하지 않음!
$ conda create -n mfg python=3.11
$ pip install ...
$ streamlit run app/main.py
ERROR: chromadb requires sqlite3 >= 3.35.0
팀장: "..."
나: "제 컴퓨터에서는 되는데요..."
팀장: "그래서 데모를 어떻게 하자고?"
Docker = "내 환경을 그대로 포장"
Docker 없이:
"Python 3.11 설치하시고,
pip install 하시고,
Neo4j 설치하시고,
ChromaDB 폴더 만들고,
.env 파일 복사하고,
streamlit run..."
Docker 있으면:
"docker compose up"
끝.
Docker는 앱, 라이브러리, 설정을 하나의 박스(컨테이너)에 포장한다. 어떤 컴퓨터에서든 똑같이 동작한다.
오늘의 목표
Step 1: Dockerfile 작성
"앱을 포장하는 설명서"
|
Step 2: docker compose.yml 작성
"앱 + Neo4j를 함께 실행하는 설명서"
|
Step 3: 빌드 & 실행 테스트
"docker compose up으로 모든 것이 뜨는지 확인"
|
Step 4: 통합 테스트
"모든 기능이 정상 동작하는지 검증"
오늘이 끝나면 누구든 한 줄 명령어로 시스템을 실행할 수 있다.
AI로 학습하기 — 꿀팁
🧪Docker 필요성 제조 환경 예시화AI 학습 팁
제조 현장 특유의 환경 불일치 문제(생산망 PC, OT 서버 등)를 Docker가 어떻게 해결하는지 AI에게 구체화 요청하세요.
제조 공장 IT 담당자가 'AI 어시스턴트 앱이 내 PC에서는 되는데 생산관리 서버에서 안 된다'는 상황을 겪고 있다. Docker를 적용하면 이 문제가 어떻게 해결되는지, 구체적인 원인(Python 버전 차이, 의존성 충돌 등)과 Docker의 해결 방식을 단계별로 설명해줘.
이 팁이 도움이 됐나요?