본문 바로가기
Docker

Docker 이미지와 컨테이너/ Docker 컨테이너 개념부터 실행 및 관리

by Maccrey Coding 2024. 9. 10.
728x90
반응형

 

Docker는 애플리케이션을 컨테이너라는 단위로 패키징하여 일관된 환경에서 실행할 수 있도록 해주는 강력한 도구입니다.

이 글에서는 Docker 컨테이너의 개념부터 실행 및 관리 방법까지 초보자도 쉽게 이해할 수 있도록 설명하겠습니다.

1. Docker 컨테이너란?

1.1 Docker 컨테이너의 개념

Docker 컨테이너는 애플리케이션과 그 실행에 필요한 모든 파일과 설정을 하나의 독립된 환경으로 패키징한 것입니다.

이를 통해 컨테이너는 어디서나 일관된 환경에서 실행될 수 있습니다.

컨테이너는 가볍고, 빠르게 실행되며, 서로 독립적으로 작동하기 때문에 다양한 개발 및 운영 환경에서 효율적으로 사용됩니다.

1.2 컨테이너와 가상 머신의 차이

컨테이너는 가상 머신과 비슷해 보일 수 있지만, 몇 가지 중요한 차이점이 있습니다.

  • 경량성: 컨테이너는 운영 체제 전체를 에뮬레이션하지 않고, 호스트 운영 체제의 커널을 공유하여 더 가볍습니다.
  • 빠른 시작: 컨테이너는 애플리케이션 실행에 필요한 최소한의 것만 포함하기 때문에 가상 머신보다 훨씬 빠르게 시작할 수 있습니다.
  • 자원 효율성: 여러 컨테이너가 동일한 호스트에서 작동하더라도 자원을 적게 사용합니다.

2. Docker 컨테이너 실행 방법

Docker 컨테이너를 실행하려면 먼저 Docker 이미지를 가져와야 합니다. Docker 이미지는 컨테이너의 청사진으로, 컨테이너가 실행될 때 필요한 모든 내용을 담고 있습니다.

2.1 컨테이너 실행 예제

간단한 Nginx 웹 서버를 Docker 컨테이너로 실행해보겠습니다.

 

  1. Docker 이미지 가져오기 (Pull)

docker pull nginx

 

이 명령어는 Docker Hub에서 최신 Nginx 이미지를 로컬로 가져옵니다.

 

  2. 컨테이너 실행

docker run -d -p 8080:80 nginx

 

    • -d: 컨테이너를 백그라운드에서 실행합니다.
    • -p 8080:80: 로컬 머신의 포트 8080을 컨테이너의 포트 80에 매핑합니다.
    • nginx: 사용할 Docker 이미지입니다.
    실행 후, 웹 브라우저에서 http://localhost:8080을 열면 Nginx 기본 페이지를 볼 수 있습니다.

2.2 컨테이너 상태 확인

컨테이너가 제대로 실행되고 있는지 확인하려면 다음 명령어를 사용합니다.

docker ps

이 명령어는 현재 실행 중인 모든 컨테이너의 목록을 보여줍니다. 여기에는 컨테이너 ID, 이미지 이름, 상태 등이 포함됩니다.

3. Docker 컨테이너 관리

Docker를 사용하여 컨테이너를 실행한 후에는 이를 효율적으로 관리하는 방법을 알아야 합니다. 컨테이너 관리에는 시작, 중지, 재시작, 로그 확인, 삭제 등이 포함됩니다.

3.1 컨테이너 중지

실행 중인 컨테이너를 중지하려면 다음 명령어를 사용합니다.

docker stop <컨테이너 ID 또는 이름>
  • <컨테이너 ID 또는 이름>: 중지하려는 컨테이너의 ID 또는 이름입니다. docker ps 명령어를 사용해 ID나 이름을 확인할 수 있습니다.

3.2 컨테이너 재시작

컨테이너를 재시작하려면 다음 명령어를 사용합니다.

docker restart <컨테이너 ID 또는 이름>

이 명령어는 지정된 컨테이너를 다시 시작합니다.

3.3 컨테이너 로그 확인

컨테이너에서 발생한 로그를 확인하려면 다음 명령어를 사용합니다.

docker logs <컨테이너 ID 또는 이름>

이 명령어는 해당 컨테이너의 표준 출력 로그를 보여줍니다. 애플리케이션의 동작을 확인하거나 문제를 진단할 때 유용합니다.

3.4 컨테이너 삭제

더 이상 필요하지 않은 컨테이너를 삭제하려면 먼저 중지한 후, 다음 명령어를 사용합니다.

docker rm <컨테이너 ID 또는 이름>

이 명령어는 지정된 컨테이너를 삭제합니다. 중지되지 않은 컨테이너를 삭제하려면 -f(force) 옵션을 사용할 수 있습니다.

 

Docker 컨테이너는 애플리케이션을 쉽게 실행하고 관리할 수 있는 강력한 도구입니다.

이번 글에서는 Docker 컨테이너의 개념, 실행 방법, 그리고 기본적인 관리 방법을 다루었습니다.

이를 통해 컨테이너 기술을 잘 활용하여 개발 환경을 더욱 효율적으로 관리하고 배포할 수 있을 것입니다.

구독!! 공감과 댓글은 저에게 큰 힘이 됩니다.

Starting Google Play App Distribution! "Tester Share" for Recruiting 20 Testers for a Closed Test.

 

Tester Share [테스터쉐어] - Google Play 앱

Tester Share로 Google Play 앱 등록을 단순화하세요.

play.google.com

 

 

728x90
반응형