도커 복습
도커
도커: 애플리케이션을 쉽게 만들고, 테스트하고, 배포할 수 있게 도와주는 소프트웨어 플랫폼
주요 특징
- 경량: 도커는 운영 체제의 커널을 공유하므로, 가상 머신보다 훨씬 가볍고 빠르게 실행
- 이식성: 도커 컨테이너는 어디서든 동일하게 실행된다.
- 확장성: 도커를 사용하면 여러 개의 컨테이너를 효율적으로 관리하고 쉽게 확장
키워드
- 이미지: 애플리케이션과 모든 실행에 필요한 파일은 포함한 읽기 전용 템플릿(컨테이너를 생성하기 위한 설계도라 생각하기로!) = 정적
- 컨테이너: 이미지를 실행하여 동작하는 애플리케이션 인스턴스 = 동적
-> 즉, 이미지는 프로그램이 실행되기 위한 준비물이고, 컨테이너는 실제 실행되는 인스턴스
- 도커 파일: 이미지를 생성하기 위한 명령어가 담긴 스크립트 파일
- 도커 허브: 이미지를 저장하고 공유하는 중앙 저장소
- 볼륨: 컨테이너 데이터를 지속적으로 저장하는 메커니즘
- 네트워크: 컨테이너 간의 통신을 관리하는 방식
도커는 언제 사용할까?
- 일관된 개발 환경이 필요할 때
- 애플리케이션을 빠르게 배포하고 실을 때
- 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 컨테이너_아이디
주말이여도 공부하기 약속~