본문 바로가기
카테고리 없음

docker 설치 및 시작하기

by Blaze_블즈 2023. 8. 13.

안녕하세요 

블레이즈 테크 노트의 

블레이즈 입니다. 

 

오늘은 docker를 설치하고 사용해보도록 하겠습니다. 

docker를 통해  ML 실험을 위해 필요한 실험 환경을 동일하게 갖춰주려고 합니다. 

 

실험을 위한 코드는 dependency 를 맞춰주는 게 중요한데요,

docker를 사용하면 가상환경과 유사한 컨테이너를 관리하기가 아주 편합니다.

 

 

도커가 무엇이고 왜 필요한지는 이 포스트에 잘 설명이 되어 있네요:)

 

여러분들도 코드가 잘 실행이 안된다면 docker를 활용해 버전 정보를 잘 맞춰주세요!

 

docker는 아래의 링크에서 다운받을 수 있습니다. 

https://hub.docker.com

 

Docker Hub Container Image Library | App Containerization

Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide.

hub.docker.com

 

도커를 제 맥북에도 다운을 받고 

Linux 서버에도 다운을 받았습니다. 

맥북에 다운받은 docker

 

도커가 잘 설치되었는지 확인하기 위해 아래의 코드를 입력합니다. 

docker version

이렇게 확인해보면 docker가 제대로 설치되어 있는지 확인해볼 수 있습니다. 

 

 

이제 도커에서 tensorflow가 잘 실행되는지 알아볼 차례입니다. 

docker run -it --rm tensorflow/tensorflow \
   python -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

 

이렇게 확인을 해줬는데요, 아래의 그림과 같은 결과가 나옵니다. 

docker: permission denied 라는 에러인데요, 이렇게 permission이 없을 땐 어떻게 해야 할까요? 

 

먼저 아래의 코드를 입력합니다. 

group

이렇게 하면 사용자가 속한 그룹이 보일텐데 여기에 docker가 없어서 허가가 되지 않은 거라고 볼 수 있습니다. 

 

이제 다음과 같은 코드를 입력하여 권한을 부여해줍니다. 

 

sudo usermod -aG docker $USER

 

권한을 부여해준 후 exit으로 로그아웃 후, 다시 로그인하면 group에 docker가 들어있을 겁니다. 

 

이제, 다시 docker run tensorflow를 해보면 아래와 같습니다. 

docker run -it --rm tensorflow/tensorflow \
   python -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

 

가장 최근의 텐서플로우 이미지를 다운받는 모습입니다. 

 

이러한 이미지는 제가 직접 만들 수도 있고 기업이나 다른 사용자가 만든 것을 다운받아서 사용할 수도 있습니다. 

https://hub.docker.com

 

Docker Hub Container Image Library | App Containerization

Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide.

hub.docker.com

 

위의 링크로 들어가시면 아래의 페이지가 뜨는데 여기서 회원가입을 하고 원하는 이미지를 검색하면 됩니다. 

 


 

도커에서 사용할 수 있는 기본적인 명령어로는 

docker ps 

docker images 

등이 있습니다. 

 

 

먼저 docker ps의 예시를 보겠습니다. 

docker ps

이렇게 현재 돌아가고 있는 컨테이너를 확인할 수 있습니다. 

 

 

 

다음으로는 docker images. 

이 명령어는 설치된 이미지를 모두 확인할 수 있습니다. 

docker images

 

 

그리고 저는 docker cp 도 종종 씁니다. 

이 명령어는 파일을 옮길 때 쓰는 명령어입니다. 

docker cp /home/이동경로/이동을원하는파일.txt name_of_docker:/

이렇게 기본적인 머신러닝 실험 준비를 위한 도커 설치가 완료되었습니다.

 

 

 

 

감사합니다.