1. 개요

Docker 이미지 관련 작업을 해보자.

아래 내용은 root 계정 상에서 진행했다.


2. 이미지 생성 및 실행

Nginx 컨테이너를 띄우려고 한다.

# docker run -d -p 80:80 --name nginx nginx
750077b640be4ae71349b49048d03cde9f45d5edf6efa0aafb8a5fd6b071d2ca

생성되었다. 만약 이미지를 가지고 있다면 아래와 같은 문구가 나오면서 이미지를 풀링할 것이다.

Unable to find image 'nginx:latest' locally
latest: Pulling from library/nginx
2a72cbf407d6: Pull complete
fefa2faca81f: Pull complete
080aeede8114: Pull complete

3. 확인

# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES
750077b640be        nginx               "nginx -g 'daemon of…"   2 minutes ago       Up 2 minutes        0.0.0.0:80->80/tcp   nginx

실제 80 포트도 확인을 해보자.

# netstat -an | grep 80
tcp        0      0 :::80                       :::*                        LISTEN
udp        0      0 fe80::4af:3bff:fea8:f39c:546 :::*
unix  2      [ ]         DGRAM                    10380
unix  3      [ ]         STREAM     CONNECTED     9800

이제 이 호스트의 80 포트로 접근하면 Nginx 웰컴 페이지를 만날 수 있다.


4. 삭제

# docker rm 750077b640be
Error response from daemon: You cannot remove a running container 750077b640be4ae71349b49048d03cde9f45d5edf6efa0aafb8a5fd6b071d2ca. Stop the container before attempting removal or force remove

컨테이너가 기동되어 있어 바로 삭제할 수는 없다. 중지부터 하고 지워야 한다.

# docker stop 750077b640be
750077b640be
# docker rm 750077b640be
750077b640be
# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES