Docker 설치부터 실행까지
0. 환경
- Ubuntu 18.04
1. docker 설치
- 설치 스크립트 다운로드 받아서 실행
sudo wget -qO- https://get.docker.com/ | sh
2. sudo 없이 실행하기
- 현재 로그인된 user를 docker group에 추가
sudo usermod -aG docker $USER # 적용하려면 다시 로그인 필요
3. image 다운로드
- docker hub에서 이미 만들어져있는 image를 다운로드
- 이미지는 https://hub.docker.com/ 에서 검색할 수 있음
$ docker pull ubuntu # latest 버전 다운로드
$ docker pull ubuntu:18.04 # ubuntu 특정 버전(18.04) 다운로드
- 다운로드 이미지 확인
$ docker image list
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 16.04 13c9f1285025 4 weeks ago 119MB
ubuntu 18.04 4c108a37151f 4 weeks ago 64.2MB
4. image 실행
- -it 옵션: 표준입출력, 터미널실행
- -it 옵션을 주지 않으면 ubuntu의 /bin/bash가 실행되고 바로 종료됨.
docker run -it ubuntu:16.04 # docker run {IMAGE}
docker run -it ubuntu:18.04
5. image 삭제
docker rmi ubuntu:16.04 # docker rmi {IMAGE ID}
- container 가 있으면 container를 먼저 제거하거나 -f 옵션으로 강제 제거
$ docker rmi ubuntu:16.04
Error response from daemon: conflict: unable to remove repository reference "ubuntu:16.04" (must force) - container 21ad181c33ba is using its referenced image 13c9f1285025
$ docker rmi ubuntu:16.04 -f
Untagged: ubuntu:16.04
Untagged: ubuntu@sha256:a4d8e674ee993e5ec88823391de828a5e9286a1597b731eaecaaf9066cfdf539
Deleted: sha256:13c9f1285025c03cfd56a2809973bfec93a6468953c4d0ed70afb1f492f50489
6. container list 확인
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a8f992041131 ubuntu:18.04 "/bin/bash" About a minute ago Exited (0) 2 seconds ago quirky_haibt
7. container start
- container가 실행될 뿐 bash가 붙지 않는다.
$ docker start a8f992041131 # docker start {CONTAINER ID}
8. container attach
- 실행된 container에 bash shell에 붙는 작업
$ docker attach a8f992041131
root@a8f992041131:/#
9. container 제거
$ docker rm a8f992041131 # docker rm {CONTAINER ID}