도커 설치 및 실행 방법 by 김다이아2023. 7. 11. 15:43
반응형

Docker는 컨테이너화된 애플리케이션을 개발, 배포 및 실행하기 위한 오픈 소스 플랫폼입니다.

Docker를 설치하려면 다음과 같습니다.

OS는 Linux 기반 시스템을 대상으로 설치 하는 방법을 설명 합니다.

1. 패키지 관지라를 업데이트 합니다.

yum update

2. docker 설치

yum install -y docker docker-ce docker-ce-cli containerd.io

3. docker 버전 확인

docker --version

버전 표시가 정상적으로 출력 되면 설치 성공 하였습니다.

4. docker 실행 명령어

systemctl start docker -> 도커 시작
systemctl enable docker -> 서버 부팅 될 시 도커 자동 시작

 


 

다음은 Docker를 실행방법은 다음과 같습니다.

Docker 이미지는 컨테이너 실행에 필요한 파일 시스템과 실행 환경을 포함하는 가볍고 독립적인 패키지입니다.

이미지는 Docker 컨테이너를 만들기 위한 템플릿이라고 생각할 수 있습니다.

 

1. Docker 이미지 검색

Docker Hub와 같은 공개 Docker 레지스트리에서 이미지를 검색하거나 개인적으로 구축한 이미지를 사용할 수 있습니다.

Docker Hub(https://hub.docker.com/)은 Docker 이미지의 공식 레지스트리입니다.

이미지를 검색하려면 Docker Hub 웹 사이트에서 검색어를 입력하거나 docker search 명령을 사용할 수 있습니다.

docker search centos

 

2. Docker 이미지 다운로드

Docker 이미지를 다운로드하려면 docker pull 명령을 사용합니다.

이미지 이름과 선택적으로 태그를 지정하여 이미지를 명시합니다.

docker pull centos

* centos 로 이미지 다운로드 할 경우 latest   버전이 다운로드 됩니다.

 

3. 로컬 이미지 목록 확인

다운로드한 Docker 이미지의 목록을 확인하려면 docker images 명령을 사용합니다.

docker images

 

4. Docker 이미지 실행

다운로드한 Docker 이미지로 컨테이너를 실행하려면 docker run 명령을 사용합니다.

이 명령은 이미지를 기반으로 새로운 컨테이너를 시작합니다.

docker run -i -t --name centos8 -p 80:80 -p 443:443  centos:latest /usr/sbin/init

위의 명령은 다음과 같은 옵션을 포함합니다:

-i (interactive) 컨테이너와 상호 작용하기 위해 표준 입력 (stdin)을 열어둡니다.
-t (tty) 컨테이너와의 상호 작용을 위해 가상 터미널을 할당합니다.
--name 컨테이너의 이름을 "centos8"로 지정합니다.
-p 호스트의 80번 포트를 컨테이너의 80번 포트와 연결하고, 호스트의 443번 포트를 컨테이너의 443번 포트와 연결합니다.
docker.io/centos 사용할 이미지의 이름을 지정합니다.
/usr/sbin/init 컨테이너가 실행될 때 CentOS 시스템 초기화를 위해 /usr/sbin/init 명령을 실행합니다.


이 명령을 실행하면 CentOS 8 이미지를 기반으로한 새로운 컨테이너가 실행되며, 호스트의 80번 포트와 443번 포트가 컨테이너의 80번 포트와 443번 포트에 연결됩니다. 컨테이너의 이름은 "centos8"로 설정됩니다.

추가로, docker.io/centos 이미지는 Docker Hub에서 공식적으로 제공되는 CentOS 이미지의 전체 이름입니다. 

 

5. Docker 컨테이너 목록표시

docker ps -a 명령을 사용하여 현재 실행 중인 컨테이너와 종료된 컨테이너의 목록을 표시합니다.

여기서 -a 옵션은 모든 컨테이너를 표시하도록 지정합니다.

다음은 docker ps -a 명령의 출력 예시입니다:

CONTAINER ID   IMAGE            COMMAND       CREATED          STATUS                      PORTS                    NAMES
abcd1234       ubuntu:20.04     "/bin/bash"   2 hours ago      Up 2 hours                                                      my_container
efgh5678       centos:8         "/bin/bash"   1 week ago       Exited (0) 5 days ago                                  another_container
ijkl9012       nginx:latest     "nginx -g 'da   3 weeks ago      Exited (1) 3 weeks ago                                  nginx_container

176e1132335a        docker.io/centos    "/bin/bash"         11 seconds ago      Up 10 seconds   0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   centos8

 각 컨테이너에 대한 정보는 다음과 같습니다.

CONTAINER ID 컨테이너의 고유 식별자입니다.
IMAGE 컨테이너가 사용하는 이미지의 이름과 태그입니다.
COMMAND 컨테이너가 실행 중인 명령입니다.
CREATED 컨테이너가 생성된 시간입니다.
STATUS 컨테이너의 현재 상태입니다.
PORTS 컨테이너와 호스트 간 포트 연결 정보입니다.
NAMES 컨테이너의 이름입니다.



위의 예시에서, my_container는 현재 실행 중인 컨테이너입니다. another_container와 nginx_container는 종료된 컨테이너입니다.

 

6. Docker도커 컨네이너 실행

docker exec -it centos8 bash 명령을 사용하면 실행 중인 컨테이너 centos8에 대해 새로운 Bash 세션을 시작할 수 있습니다.

docker exec -it centos8 bash



위의 명령은 다음과 같은 옵션을 포함합니다.

exec 실행 중인 컨테이너에서 명령을 실행하는 Docker 명령입니다.
-it 표준 입력(stdin)을 열어 컨테이너와 상호 작용하기 위해 가상 터미널을 할당합니다.
centos8 실행 중인 컨테이너의 이름이나 ID입니다.
bash 컨테이너에서 실행할 명령입니다. 이 경우, bash를 실행하여 새로운 Bash 세션을 시작합니다.


위의 명령을 실행하면 centos8라는 이름의 컨테이너에서 새로운 Bash 세션이 시작됩니다.

이제 컨테이너 내부에서 명령을 실행하거나 상호 작용할 수 있습니다.

Bash 세션을 종료하려면 exit 명령을 사용하면 됩니다.

또는

ctrl+p+q 명령은 현재 실행 중인 Docker 컨테이너를 종료하지 않고 컨테이너의 상호 작용을 중단하는 명령입니다. 

이 명령을 사용하여 컨테이너에서 빠져나올 수 있습니다.

실행 중인 컨테이너에서 docker ctrl+p+q를 입력하면 컨테이너의 상호 작용이 중단되고 호스트 쉘 또는 다른 작업으로 돌아갑니다. 

컨테이너는 여전히 실행 중이며 종료되지 않습니다.

 

 

 

 

 

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

 

 

 

반응형