ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 도커 (Docker) 사용법
    데브옵스 (DevOps) 2023. 10. 1. 11:30
    SMALL

    도커 Docker 란?

    도커 (Docker) 대표 이미지

    • Docker는 컨테이너를 사용하여 애플리케이션을 보다 쉽게 ​​생성, 배포 및 관리할 수 있도록 설계된 오픈 소스 플랫폼이다.
    • 컨테이너를 사용하면 개발자는 라이브러리 및 기타 종속성 등 필요한 모든 부분으로 애플리케이션을 패키징하여 모두 하나의 패키지로 출시할 수 있다.

    도커 컨테이너란?

    요약: 도커 이미지 기반 애플리케이션 실행되는 상태

    • 컨테이너는 도커 이미지를 기반으로 생성된 실행 가능한 인스턴스이다.
    • 독립적인 프로세스로 애플리케이션과 필요한 실행 환경을 포함한다.
    • 여러 컨테이너를 동시에 실행할 수 있으며, 각각 격리된 환경에서 동작한다.

     

    도커 이미지란?

    요약: 컨테이너 구성하는 파일시스템과 실행할 애플리케이션 설정 하나로 합친 것 - 컨테이너 생성하기 위한 템플릿

    • 도커 컨테이너가 실행되기 위한 종속성을 모두 가진 정적 파일이다.
    • 이미지는 컨테이너를 생성할 때 사용되며, 여러 컨테이너에서 재사용 될 수 있다.

     

    도커를 왜 사용해야할까?

    • 변화하지 않는 실행환경확보를 위함
    • 실행 환경과 애플리케이션의 일체화로 이식성 향상
    애플리케이션 개발하며 변화 없는 동일한 환경 구성에 강력한 이점이 있음

     

    간단한 실습 1

    도커이미지 다운로드 및 컨테이너 실행 방법에 대해 알아보자

    1. 터미널에서 도커를 설치한다.

    sudo wget -qO- http://get.docker.com/ | sh

    2. 도커 설치가 잘 되었는지 확인하기 위해 터미널에서 docker version을 입력한다.

    docker version

     

    3. 최초 실행시 아무 이미지도 등록되어있지 않았을테니, 도커 허브로부터 우분투 도커 이미지를 다운받아보자.

    • docker pull은 이미지를 다운로드하는 명령어임 (아직 실행한 상태 아님) 
    docker pull ubuntu:22.04

    4. 위 이미지로 컨테이너를 실행해보자

    • ubuntu:22.04 이미지로 컨테이너가 실행된것을 확인할 수 있다. 
    docker run -it ubuntu:20.04 bash

    5. 현재 실행중인 컨테이너 현황은 docker ps 로 확인할 수 있다. 

    • ubuntu:20.04 이미지를 기반으로 한 컨테이너가 잘 실행되고 있음을 확인할 수 있었다. 

      5-1. 현재 실행 중인 컨테이너 현황은 docker container ls 로 확인해도 동일하다.

      5-2. 종료된 컨테이너까지 모두 확인할 수 있는 방법은 docker container ls -a 로 확인하면 된다. 

      5-3. 보유중인 도커이미지 현황은 docker image ls 로 확인할 수 있다.

     

    간단한 실습 2

    내 프로젝트를 이미지로 남기고 해당 이미지를 열어보는 실습을 해보자

    1. 내가 올리고 싶은 프로젝트 폴더에 Dockerfile을 생성한다.

     

    FROM python:3.9.13
    
    # 애플리케이션 소스 코드 복사
    COPY . /app
    
    # 종속성 설치
    WORKDIR /app
    RUN pip install -r requirements.txt
    
    # 애플리케이션 실행
    CMD ["python", "practice.py"]

     practice.py에는 임시 출력 텍스트만 작성했으며, requirements.txt에는 실행파일에서 필요한 의존성 패키지들을 기술해주면 되는데 print()기능만 사용했으므로 필요한 패키지가 없어 공란으로 두었다.

    맨 밑에 CMD ["python", "practice.py"] 로 인해 해당 Dockerfile을 불러오면 자동으로 practice.py가 실행된다. 

     

    2. 프로젝트 폴더 경로로 들어와 docker build를 통해 이미지를 생성한다. 이미지 이름은 임의로 붙여주면 된다.

    docker build -t 붙여주고 싶은 이미지명 .

    위와 같이 파란색으로 글씨가 보인다면 성공이다.!

     

    3. 해당 도커이미지를 불러오고 싶다면 간단한 실습 1에서 했던 바와 같이 docker run 이미지명 구문을 실행한다. 

    docker run 이미지명

    practice.py 에서 의도한 "Docker 이미지로 불러올 때 출력됩니다." 문구가 잘 나타난다. 

     

    4. 만일 이미 올린 도커 이미지를 수정하고 싶다면 docker build -t 이미지명:v2 와 같이 ':' 뒤에 버전 명이나 숫자 등을 작성해 재빌드해주면 끝! 

     

    이외에도 docker-compose 등 도커에는 편리한 기능이 많으니 지속적으로 내용을 업데이트 할 예정이다 :) 

    반응형
    LIST

    '데브옵스 (DevOps)' 카테고리의 다른 글

    CI/CD 파이프라인 개념 - CD 편  (0) 2023.08.15
    CI/CD 파이프라인 개념 - CI 편  (0) 2023.08.13
Designed by Tistory.