TIL_250228

듀듀·2025년 2월 28일

spring_TIL

목록 보기
13/53

도커 복습

도커

도커: 애플리케이션을 쉽게 만들고, 테스트하고, 배포할 수 있게 도와주는 소프트웨어 플랫폼

주요 특징

  • 경량: 도커는 운영 체제의 커널을 공유하므로, 가상 머신보다 훨씬 가볍고 빠르게 실행
  • 이식성: 도커 컨테이너는 어디서든 동일하게 실행된다.
  • 확장성: 도커를 사용하면 여러 개의 컨테이너를 효율적으로 관리하고 쉽게 확장

키워드

  • 이미지: 애플리케이션과 모든 실행에 필요한 파일은 포함한 읽기 전용 템플릿(컨테이너를 생성하기 위한 설계도라 생각하기로!) = 정적
  • 컨테이너: 이미지를 실행하여 동작하는 애플리케이션 인스턴스 = 동적
    -> 즉, 이미지는 프로그램이 실행되기 위한 준비물이고, 컨테이너는 실제 실행되는 인스턴스
  • 도커 파일: 이미지를 생성하기 위한 명령어가 담긴 스크립트 파일
  • 도커 허브: 이미지를 저장하고 공유하는 중앙 저장소
  • 볼륨: 컨테이너 데이터를 지속적으로 저장하는 메커니즘
  • 네트워크: 컨테이너 간의 통신을 관리하는 방식

도커는 언제 사용할까?

  • 일관된 개발 환경이 필요할 때
  • 애플리케이션을 빠르게 배포하고 실을 때
  • MSA 도입할 때
  • CI/CD 파이프라인을 구축할 때
  • 리소스 효율성을 높이고 싶을 때

도커 명령어

  • 이미지 빌드
docker build -t myapp:latest .

. -> 현재 폴더를 가리킴

  • 도커 이미지 가져오기
docker pull postgres

postgres는 이미지 이름

  • 이미지 목록 보기
docker images
  • 이미지 삭제
docker rmi myapp:latest

도커 컨테이너 명령어

  • 컨테이너 실행
docker run -d -p 8080:80 myapp:latest

-d -> 컨테이너를 백그라운드에서 실행한다는 뜻
-p -> 포트 옵션

  • 컨테이너 내부 접속
docker exec -it 컨테이너_아이디 /bin/bash
  • 실행중인 컨테이너 목록 보기
docker ps
  • 모든 컨테이너 목록 보기
docker ps -a
  • 중지된 컨테이너를 포함한 모든 컨테이너의 목록을 표시
docker ps -al
  • 컨테이너 시작
docker start container_id
  • 컨테이너 삭제
docker rm 컨테이너_아이디

주말이여도 공부하기 약속~

0개의 댓글