Docker 설치하기 - Docker Desktop MacOS (2) Tip & Tips2018. 12. 11. 23:30
지난번에는 MacOS에 도커(Docker Desktop)을 설치하고, 컨테이너에 nginx도 올리는 것도 해보았는데, 밤도 늦고 해서 컨테이너를 정리하지 않고 그냥 내버려두었다.
컨테이너 이미지를 실행하는 것을 복습할겸해서 다시 정리한다.
사실 설치와 리소스를 정리하는 내용은 "docker.com"에 있는 Getting started를 참조하면 바로 알수 있다.
Getting Started : "https://docs.docker.com/docker-for-mac/#explore-the-application"
지난번에 했던 내용을 복습하는 측면에서 정리를 해보면, 먼저 버전을 확인한다.
"docker", "docker-compose", "docker-machine"의 버전을 아래과 같이 Terminal에서 확인할 수 있다.
mymac$ docker --version
Docker version 18.09.0, build 4d60db4
mymac$ docker-compose --version
docker-compose version 1.23.2, build 1110ad01
mymac$ docker-machine --version
docker-machine version 0.16.0, build 702c267f
또는 상단에 떠 있는 "Docker Dasktop" 의 고래 아이콘을 클릭하면 뜨는 메뉴창중에 "About Docker Desktop" 메뉴를 클릭하면
다음과 같은 화면이 나타난다.
설치되어 있는 시스템 모듈의 버전들이 보인다.
지난번에 설치해서 실행한 컨테이너는 "hello-world"와 "eginx" 였다.
mymac$ docker run hello-world
mymac$ docker run -d -p 80:80 --name webserver nginx
Local Repository에 설치되어 있는 이미지가 있다면, 그대로 사용하고, 없다면 공용 Repository에서 최신버전을 다운받아서 실행을 하게 된다. 여기까지가 지난번에 수행했던 작업이다.
"docker run"을 실행할때 옵션 정보를 알려면 "docker run --help"를 터미널창에서 실행하면 된다.
여기서 "-d" 옵션은 background에서 실행하라는 옵션이다 (컨테이너 ID를 화면에 찍고).
그리고, "-p" 옵션은 컨테이너의 port와 호스트의 port를 매핑해 주는 옵션이다. 위에서는 80포트를 80 포트로 매핑하는 역할을 한다.
-d, --detach Run container in background and print container ID
-p, --publish list Publish a container's port(s) to the host
실행되고 있는 컨테이너의 리스트는 "docker container ls" 명령으로 아래가 같이 가져올수 있다.
mymac$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5301571351c7 nginx "nginx -g 'daemon …" 9 minutes ago Up 9 minutes 0.0.0.0:80->80/tcp webserver
세부적인 명령에 대한 도움말은 "docker container --help" 를 이용해서 볼 수 있다.
도움말을 보년 "a"옵션은 전체를 보여주라는 옵션인데, 실행하면 아래와 같은 내용을 볼수 있다.
mymac$ docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5301571351c7 nginx "nginx -g 'daemon…" 17 minutes ago Up 17 minutes 0.0.0.0:80->80/tcp webserver
29094fd263cf hello-world "/hello" 20 minutes ago Exited (0) 20 ... quirky_ptolem
위 실행 결과를 보면 삭제하려는 컨테이너와 이미지는 "nginx"와 '"hello-world"인데, "nginx"는 지금 백그라운드에서 실행중이라는 것을 알수 있다.
Terminal에서 "docker container stop webserver"를 입력하여 실행되는 컨테이너을 중단시키고, 그 결과를 조금전에 수행했던 "docker container ls -a"명령을 이용해서 확인해 보면 다음과 같이 나타난다.
mymac$ docker container stop webserver
webserver
mymac$ docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS
5301571351c7 nginx "nginx -g 'daemon of…" 28 minutes ago Exited (0) 4 minutes ago
29094fd263cf hello-world "/hello" 31 minutes ago Exited (0) 31 minutes ago
이어서 컨네이너와 이미지를 삭제한다.
먼저 컨테이너를 삭제한다. 컨테이너 리스트에서 보았던 "NAMES" 필드값을 이용하면 된다.
mymac$ docker image rm webserver
mymac$ docker image rm quirky_ptolemy
실행된 결과의 확인은 다시 "docker container ls -a"명령을 확인하면 된다.
다음으로는 이미지를 삭제하는 방법인데, 먼저 "docker image ls" 명령을 사용해서 리스트를 가져온다.
mymac$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 568c4670fa80 13 days ago 109MB
hello-world latest 4ab4c602aa5e 3 months ago 1.84kB
이미지를 삭제하기 위해서는 옵션으로 "IMAGE ID"가 필요하기 때문이다.
"hello-world" 와 'nginx'의 이미지는 다음과 같이 " docker image rm" 명령을 이용하여 삭제할 수 있다.
mymac$ docker image rm 4ab4c602aa5e
Untagged: hello-world:latest
Untagged: hello-world@sha256:0add3ace90ecb4adbf7777e9aacf18357296e799f81cabc9fde470971e499788
Deleted: sha256:4ab4c602aa5eed5528a6620ff18a1dc4faef0e1ab3a5eddeddb410714478c67f
Deleted: sha256:428c97da766c4c13b19088a471de6b622b038f3ae8efa10ec5a37d6d31a2df0b
mymac$ docker image rm 568c4670fa80
Untagged: nginx:latest
Untagged: nginx@sha256:5d32f60db294b5deb55d078cd4feb410ad88e6fe77500c87d3970eca97f54dba
Deleted: sha256:568c4670fa800978e08e4a51132b995a54f8d5ae83ca133ef5546d092b864acf
Deleted: sha256:ac0442c0fafd48e24a96fa3099ea7ad20012c8759e1dd03dd387dbfbe382984c
Deleted: sha256:6b9d35d8d75115937cd78da275f527cccef672cbd71f34062dffe2e930fd7e13
Deleted: sha256:ef68f6734aa485edf13a8509fe60e4272428deaf63f446a441b79d47fc5d17d3
이에 대한 실행 결과는 "docker image ls"를 이용해서 확인하면 된다.
'Tip & Tips' 카테고리의 다른 글
Docker 설치하기 - Docker Desktop MacOS (1) (0) | 2018.12.09 |
---|---|
Mac에서 Windows 공유 폴더 연결하기 (0) | 2011.01.17 |
PNG File 에 대한 간략 정리 (0) | 2009.09.07 |
Twitter API 사용하기 (1) | 2009.07.18 |
INTEL 칩셋 패치 유틸리티 v9.0.0.1012 (0) | 2009.01.29 |