[ML] MLOps - Docker

GisangLee·2022년 8월 1일
0

ML

목록 보기
120/141

1. 설치

apt 라는 패키지 매니저 업데이트

sudo apt-get update

docker의 prerequisite package들을 설치

sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release

Docker의 GPG Key 추가

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

stable 버전의 repository를 바라보도록 설정

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Docker Engine 설치

$ sudo apt-get update
$ sudo apt-get install docker -ce docker-ce-cli containerd.io

정상 설치 확인

$ sudo docker run hello-world

2. 권한 설정

새로운 터미널을 킨다.

$ sudo usermod -a -G docker $USER
$ sudo service docker restart

이 후 VM 로그아웃 후 재로그인


3. 명령어

Docker pull

docker image repository부터 docker image를 가져오는 커맨드

$ docker pull ubuntu:18:04

Docker images

로컬에 존재하는 docker image 리스트를 출력

$ docker images 

Docker ps

현재 실행 중인 도커 컨테이너 리스트 출력

$ docker ps -a

Docker run

도커 컨테이너 실행

$ docker run -it --name demo1 ubuntu:18:04 /bin/bash
  • it : -i -t
    - container를 실행시킴과 동시에 interactive한 terminal로 접속시켜주는 옵션

  • --name
    - container id 대신 구분 하기 쉽도록 지정해주는 이름

  • /bin/bash
    - 컨테이너를 실행시킴과 동시에 실행할 커맨드로,
    /bin/bash는 bash 터미널을 사용하는 것을 의미

Docker exec

Docker 컨테이너 내부에서 명령을 내리거나, 내부로 접속하는 커맨드

$ docker exec -it -d --name demo2 ubuntu:18:04
  • -d
    - 백그라운드에서 실행하도록 하는 옵션

Docker logs

$ docker logs demo2 -f

Docker stop

실행 중인 도커 컨테이너 중단

$ docker stop demo2

Docker rm

컨테이너 삭제

$ docker rm demo2

Docker rmi

도커 이미지 삭제

$ docker rmi ubuntu

profile
포폴 및 이력서 : https://gisanglee.github.io/web-porfolio/

0개의 댓글