##1. 기존 도커 설치 유무 확인

# apt list docker{,-engine,.io} containerd runc

root 관리자에서 위 명령어를 입력하여 old version인 docker, docker-engine, docker.io,  containerd,  runc 설치유무를 확인하며 old version이 [installed]되어 있다면 제거한다. 

** 제거명령: apt remove ...

 

https://docs.docker.com/engine/install/ubuntu/ 

 

Install Docker Engine on Ubuntu

 

docs.docker.com

 

 

##2. 필요 패키지 설치

 

Install Docker Engine on Ubuntu

 

docs.docker.com

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

 

##3. key file  추가 

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

##4. APT 저장소 source.list 추가

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

arch=amd64 

*amd64 는 intel 호환 x86 64 bit 사용

   ** armhf나 arm64 를 사용하는 경우에는 이 부분을 변경한다.

*signed-by=...

  **앞에서 저장한 key 파일의 위치

 

##5. 설치과정

apt-get 대신  apt 써도 됨

1. docker  engine 의 설치

# apt update
... docker.com에서 패키지 정보를 받아오는 것을 확인 해보자

# apt -y install docker-ce docker-ce-cli containerd.io

 

2. docker daemon 실행확인

# systemctl status docker

**
Loaded 에 enabled 
Active: active(running)

가 있어야 한다.

 

 

3. docker 작동여부 확인  (제대로 작동되는지 여부 확인 목적, root 계정으로 해야함.)

 

docker run hello-world

처음 실행시 image가 없으므로, 자동으로 pulling 해서 hello-world 이미지를 받게 된다.

 

4. docker run -it ubuntu bash

#docker run -it ubuntu bash

bash 는 host os 에 있는게 아닌 격리된 상태로 실행되는 bash (docker안에 있는 bash)

-it : interactive mode , terminal 사용

https://wooono.tistory.com/348

 

[Docker] Docker run 옵션 종류

Docker run 명령어 기본 구조 docker run 은 Image 로 Container 를 생성하는 명령어입니다. docker run docker run -d -it --name containername imagename bash Docker run 옵션 종류 -i, --interactive 표준 입력(stdin)을 활성화하며,

wooono.tistory.com

 

도커에 들어간 상태.

root  : root는 진짜 root가 아닌 도커 내부 root 로  docker 내부에서 보이는 chroot된 파일 시스템.

ps 명령 치면  PID 1(격리공간) 나와있고  ps 명령 입력한게 보인다

 

ps 도 system에 있는  ps 가 아닌, 도커 안에 있는 ps.

시스템에서 설치되있다고 도커안에서 설치 된게 아니다.

 

5. docker의 ubuntu bash에서 exit해보자

exit 입력 시 도커에서 빠져나옴.

도커에 들어가서 ps -a 입력 시 CONTAINER ID 와 NAMES 부분이 보인다. 이를 유심히 눈여겨 봐야한다.

 

 

Summary

1. docker 의 설치방법

 1) docker 저장소 추가 (APT), key 추가, 설치

 2) docker hello-world 의 실행 메시지 확인 (in root)

   -->  docker에서 실행시키는 명령(ps 명령 등)은 host OS의 실행 파일이 아니다.

 

 

 

 

 

 

 

+ Recent posts