해결된 질문
작성
·
160
·
수정됨
1
안녕하세요, 다니엘 선생님
VM에서 /home/{user}/Kaggle-python-gpu-env 폴더를 생성하고 그 하위에 도커파일을 만들고 dev containers 확장기능을 이용해서 리빌드하면 도커 빌드 및 컨테이너가 배포되어 자동으로 진행되어 파이선 개발 환경 (A)가 만들어 진 것으로 이해했습니다. 개념이 맞을까요?
그렇다면, 또 다른 신규 폴더를 생성하고 위의 과정을 동일하게 반복한다면 또 다른 개발환경(B)가 만들어지는 건가요? 이런 식으로 여러 개의 컨테이너가 배포가 되어 개발 환경을 만들 있는 건가요?
답변 1
1
안녕하세요, SPAGGY님.
(질문) 그렇다면, 또 다른 신규 폴더를 생성하고 위의 과정을 동일하게 반복한다면 또 다른 개발환경(B)가 만들어지는 건가요?
(Answer) 이해하시고 계신 개념이 정확히 맞습니다. 다수의 컨테이너를 생성하면 작업 공간이 분리되고, 이 때 한 가지 고민해 볼 수 있는 것이 컨테이너의 수가 많아지더라도 하드웨어 사용 용량은 크게 증가하지 않습니다. 기본 베이스 이미지는 공유하기 때문입니다.
예를 들어 SPAGGY님이 하나의 폴더를 생성하고 DockerFile을 좀 더 다르게 작성했다고 해 볼께요. 예를 들면 pandas의 new version (2.5.2)을 테스트할 목적으로 아래와 같이 DockerFile을 생성하고 새로운 폴더에 저장했다고 가정해 보면,
DockerFile
FROM gcr.io/kaggle-gpu-images/python:v139
RUN pip install yfinance && pip install --upgrade pandas==2.5.2
dev container는 새로운 이미지와 컨테이너를 생성합니다. 이 때 기본 베이스 이미지, gcr.io/kaggle-gpu-images/python:v139 와 yfinance는 기존 이미지와 공유하기 때문에 새로운 이미지에 대해서 추가적으로 필요한 저장 공간은 new pandas에 필요한 용량 뿐입니다.
또한 이 때 기존 이미지에 대한 Layer들은 이미 설치가 되어 있기 때문에 새로운 dev container의 생성도 빠르게 진행됩니다.
추가적으로 설명이 필요한 부분은 언제든 지체하지 마시고 계속 질문해 주세요.
화이팅입니다. 😃
다니엘 드림
p install --upgrade pandas==2.5.2
빠른 답변 감사합니다. 컨셉이 너무 좋네요. ^^