728x90
반응형

오늘은 MLOps 공부 그 첫 번째 도커에 대해 간단히 알아보도록 하겠습니다.

우선 도커는 리눅스의 응용 프로그램들을 프로세스 격리 기술들을 사용해 컨테이너로 실행하고 관리하는

오픈 소스 프로젝트입니다. 사용해보시면 느낌이 확 오는데 가상 머신에 비해 배포하는 것이 너무 편합니다.

 

도커 설치

도커를 리눅스 환경에 설치하는 방법은 아주 간단합니다. 

sudo wget -qO- http://get.docker.com/ | sh

 위 명령어를 실행하면 바로 설치가 됩니다. 설치 후 아래 명령어를 실행시켰을 때 아래 이미지처럼 출력되면 끝입니다.

sudo docker run hello-world

 

명령어

docker run -> 도커 컨테이너를 실행

많은 옵션들이 있는데 아래 명령어로 예시를 들자면 

docker run -it --name test ubuntu:latest

-it -> 컨테이너를 실행시키는 동시에 interactive 한 터미널로 접속

--name -> 컨테이너 id는 알아보기가 어렵기에 구분하기 쉽도록 이름을 지정

-it 옵션을 붙였기에 명령어 실행 후 새로운 터미널에 접속된 것을 확인할 수 있습니다.

컨테이너의 이름이 test1인 것을 확인할 수 있습니다.

 

docker images -> 도커 이미지 리스트를 출력

위에서 도커가 설치됐는지 확인할 때 생성한 hello-world 이미지와

docker run 명령어 예시를 들 때 생성한 ubuntu 이미지가 출력되는 것을 확인할 수 있습니다.

 

docker ps -> 실행 중인 도커 컨테이너 리스트를 출력

확인을 위해 아래 명령어를 실행시키고 나서 docker ps 명령어를 실행하면 

docker run -it -d --name test1 ubuntu:latest

docker run 명령어에서 -d 옵션은 백그라운드에서 컨테이너가 계속 실행되도록 해준다.

test1 컨테이너가 출력되는 것을 확인할 수 있습니다.

옵션으로 -a를 넣고 실행하면 실행되었던 컨테이너까지 출력이 됩니다. 

 

docker stop -> 실행 중인 도커 컨테이너를 중단

docker stop [컨테이너 id]와 같은 방식으로 사용하는데 id는 다 칠 필요 없고 겹치는 숫자가 없을 때까지만

입력해주면 됩니다. 예를 들어 1234, 1289 2개의 컨테이너가 있다면 123 까지만 처도 1234 컨테이너가 중단됩니다. 

 

docker rm -> 도커 컨테이너를 삭제

test, test1 컨테이너를 중단하니 docker ps, docker ps -a 명령어에서 출력되지 않는 것을 확인할 수 있습니다.

 

docker rmi -> 도커 이미지 삭제

ubuntu 이미지가 삭제된 것을 확인할 수 있습니다.

 

만약 아래와 같은 에러가 뜬다면

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/images/json": dial unix /var/run/docker.sock: connect: permission denied

아래 명령어를 실행시키시면 됩니다. 저는 이걸로 해결됐습니다.

sudo chmod 666 /var/run/docker.sock

 

728x90
반응형

'MLOps' 카테고리의 다른 글

도커파일(Dockerfile) 작성  (0) 2021.11.21
MLOps란?  (0) 2021.11.16
GCP 인스턴스, 스토리지 버킷 생성하기(ssh 접속, gsutil, 권한 설정)  (0) 2021.06.08

+ Recent posts