Docker

iy·2024년 7월 17일
0

새롭게 공부한 내용

목록 보기
11/11

Docker

도커는 컨테이너 기반 오픈소스 가상화 플랫폼
프로그램을 외부 환경과 격리시켜 구동할 수 있게 해주는 소프트웨어

Docker Container

컨테이너는 코드와 모든 종속성을 패키징해 애플리케이션이 여러 환경에서 빠르고 안정적으로 실행될 수 있도록 하는 표준 소프트웨어 단위

Docker Image

애플리케이션을 실행할 때 필요한 모든 것(코드, 런타임, 시스템 도구, 시스템 라이브러리 및 설정)을 포함하는 가볍고 독립적인 실행 소프트웨어 패키지

실행 순서

  1. 이미지를 정의할 Dockerfile 작성해 이미지를 빌드 하거나 기존에 존재하는 이미지를 pull 받아 가져옴
# 해당 dockerfile있는 곳으로 이동해 아래 명령어 사용
docker build -t '이미지'
# 기존에 존재하는 이미지 사용
docker pull '이미지'
  1. 준비된 이미지를 사용해 컨테이너를 실행함
# 호스트 포트를 컨테이너 포트에 매핑해 이미지 이용해 컨테이너 실행
docker run --name '지정할 컨테이너 이름' -d -p 호스트포트:컨테이너포트 '이미지'
  1. 실행 중인 컨테이너 확인
docker ps

생명 주기

  1. 생성
  • 컨테이너 생성 후 실행은 되지 않은 상태
docker create --name '컨테이너 이름' '이미지 이름'
  1. 실행
  • 실행 중인 상태
# 생성 후 실행 
docker run --name '컨테이너 이름' -d '이미지 이름'

# 이미 생성된 컨테이너 실행
docker start '컨테이너 이름'
  1. 일시정지
  • 컨테이너 내 모든 프로세스 일시 정지된 상태
docker pause '컨테이너 이름'
  1. 재실행
  • 일시정지된 컨테이너 재실행
docker unpause '컨테이너 이름'
  1. 중지
  • 컨테이너 내 모든 프로세스 종료된 상태
docker stop '컨테이너 이름'
  1. 재시작
  • 컨테이너 중지된 후 다시 시작된 상태
  • '--restart' 옵션 사용: 컨테이너 생성 시 재시작 정책 설정 가능
docker restart '컨테이너 이름'

# 컨테이너 생성 시 재시작 정책 설정
docker run --name '컨테이너 이름' --restart always -d '이미지 이름'
  1. 제거
  • 컨테이너 삭제
docker rm '컨테이너 이름'

Docker 사용 이유

  1. 표준화된 환경 제공
  2. CI/CD 파이프라인에 쉽게 통합되어 자동회 배포 지원
  3. 동일한 호스트 OS커널 공유-> 오버헤드 발생이 적음
  4. 쿠버네티스와 잘 통합되어 여러 컨테이너 관리가 효율적이며 확장 가능함
  5. 독립적 개발, 배포, 확장을 통해 서비스 재사용성 높음
  6. 독립된 환경에서 실행하므로 애플리케이션 독립 보장해 보안 측면에서 관리 용이

참고 블로그
AWS 문서

0개의 댓글