도커를 간단하게 실습하고 다뤄볼 수 있는 환경을 원한다면, 도커 공식 홈페이지에서 제공하는 가상 환경을 이용하면 좋다.

 

오늘은 Play with Docker, 즉 PWD에 대한 가이드이다.

 

오늘 실습을 통해서 도커 CLI 환경과 명령어들을 이해할 수 있고 기본적인 기능을 알게 된다.

 

명령어 내용
docker images 현재 시스템에 저장된 도커 이미지 목록을 표시하는 명령어입니다. 이 명령을 사용하면 로컬에 다운로드한 이미지 목록과 해당 이미지의 크기, 만들어진 날짜 및 시간 등의 정보를 확인할 수 있습니다.
docker pull 도커 이미지를 다운로드하는 명령어
docker ps 현재 실행 중인 도커 컨테이너의 목록을 표시하는 명령어입니다. 이 명령을 사용하면 컨테이너의 상태, ID, 이름, 사용 중인 리소스 등의 정보를 확인할 수 있습니다.
docker run 도커에서 컨테이너를 생성하고 실행하는 명령어
-d 옵션 컨테이너를 detached 모드로 실행합니다. 이는 컨테이너가 백그라운드에서 실행되도록 합니다.
-p 8001:80 호스트의 포트 8001을 컨테이너의 포트 80으로 매핑합니다. 즉, 호스트에서 http://localhost:8001로 접속하면 컨테이너 내의 Nginx 서버로 연결됩니다.
-a 모든 컨테이너를 포함하여 종료된 컨테이너도 포함하여 목록을 표시합니다.
docker stop 도커 컨테이너를 중지(stop)하는 명령어입니다. 이 명령어는 컨테이너를 강제 종료하지 않고 graceful하게 중지시킵니다. 컨테이너가 중지되면 해당 프로세스가 실행 중인 상태에서 멈춥니다.
graceful Graceful하게 중지된다는 것은 컨테이너가 종료될 때 해당 프로세스가 어떤 작업을 완료하도록 허용하고, 사용자에게 충분한 시간을 주어 컨테이너 내의 애플리케이션이나 서비스가 정상적으로 마무리되도록 하는 것을 의미합니다. 이는 컨테이너가 종료될 때 강제로 프로세스를 중단시키는 것보다 데이터 손실이나 불안정성을 줄일 수 있는 방법입니다.
docker rm 도커에서 컨테이너를 삭제하는 명령어입니다. 이 명령어를 사용하면 종료된 컨테이너를 제거하거나, 실행 중인 컨테이너를 중지하고 삭제할 수 있습니다.

 

도커 놀이터

  • https://www.docker.com/play-with-docker/
    • docker 공식 사이트에서 웹 환경에서 Docker를 자유롭게 실습할 수 있는 환경을 제공하고 있다.
    • Lab Environment → Get Started 로 실습을 시작할 수 있는데, 먼저 Docker 계정이 필요하다.
    • docker 계정이 없다면 계정 생성 후 실습을 진행할 수 있다.

 

  • 세션을 시작하게 되면 4시간의 시간이 주어지게 되며 할당된 시간이 끝나면 Close 된다.
  • ADD New instance로 인스턴스를 생성할 수 있다.
  • Docker 명령어는 대체적으로 리눅스 환경과 유사한 명령어의 형태를 보이고 있다. 따라서 리눅스 환경과 명령이 익숙하다면 다루기 더욱 쉽다.

 

  • docker images 명령어는 현재 시스템에 저장된 도커 이미지 목록을 표시하는 명령어이다. 이 명령을 사용하면 로컬에 다운로드한 이미지 목록과 해당 이미지의 크기, 만들어진 날짜 및 시간 등의 정보를 확인할 수 있다.
  • docker pull nginx:1.23.1-alpine 명령어는 도커 허브(Docker Hub)에서 nginx 이미지의 특정 버전(1.23.1) 및 태그(alpine)를 다운로드하는 명령어이다.
  • alpine은 Alpine Linux 기반의 경량화된 버전의 이미지를 사용한다는 것을 의미한다. Alpine Linux는 경량화되어 있어 이미지 크기가 작고, 보안 측면에서도 우수한 것으로 알려져 있다.
  • 이 가상 환경에서 자유롭게 도커를 다뤄보고 도커에 대해 익숙해질 수 있다.

docker run -d -p 8001:80 --name=webserver1 nginx:1.23.1-alpine

  • 실행 결과로 컨테이너는 백그라운드에서 실행되며, 지정된 포트 매핑에 따라 호스트 시스템의 8001 포트로 Nginx 웹 서버에 접속할 수 있게 된다. 이는 실제 컨테이너가 운영 중이며, 8001 포트로 접속 시 nginx 웹 서버를 확인할 수 있음을 의미한다.

 

  • OPEN PORT → 8001
  • Welcome to nginx 사이트로 접속되는 것을 확인할 수 있다.

 

  • curl 명령어로 로컬 CLI 환경에서도 nginx 컨테이너를 확인할 수 있다.

 

  • docker ps -a 옵션으로 컨테이너 상태를 확인할 수 있다.
    1. Up: 컨테이너가 현재 실행 중인 상태. Up 다음에는 컨테이너가 실행된 시간이 표시된다.
    2. Exited: 컨테이너가 종료된 상태. Exited 다음에는 컨테이너가 종료된 시간이 표시된다. 종료 코드가 0이면 정상적으로 종료되었다는 의미이다. 종료 코드가 0이 아니면 해당 코드를 따라 비정상적으로 종료된 것을 나타낸다.
  • docker stop: 도커 컨테이너를 graceful하게 중지시키는 명령어
  • 프로세스만 죽었기에 스냅샷까지 제거하려면 docker rm을 사용한다.
  • 컨테이너를 삭제하고 싶다면 반드시 stop을 거친 이후 rm 명령어를 사용해야 한다.

 

'Docker' 카테고리의 다른 글

Docker란 무엇인가?  (2) 2024.02.11

+ Recent posts