docker run hello-world
도커 컨테이너를 사용하면, 프로젝트마다 격리된 환경을 제공하여 의존성 충돌 문제를 효율적으로 해결할 수 있음.
즉, 도커 컨테이너는 “가상머신처럼 OS 전체를 올리는 대신 프로세스 단위로 격리”하기 때문에 속도도 빠르고 자원도 적게 듦.
실습을 통째로 다시 하고 싶을 때, 아래와 같은 명령어로 도커 관련 리소스를 전부 정리할 수 있음
# 1) 실습에 사용했던 외부 폴더 삭제 (예: ~/testDockerProjects)
rm -rf ~/testDockerProjects/*
# 2) 실행/중지된 모든 컨테이너 삭제
docker rm -f $(docker ps -qa)
# 3) 모든 이미지 삭제
docker rmi -f $(docker images -qa)
# 4) 사용되지 않는 네트워크 삭제
docker network prune -f
# 5) 사용되지 않는 볼륨 삭제
docker volume prune -f
| 도커 개념 | 일반 프로그램 비교 |
|---|---|
| 도커 이미지 | 프로그램(설치 파일) |
| 도커 이미지 다운로드 | 프로그램 설치 |
| 도커 이미지 실행 → 컨테이너 생성 | 프로그램 실행 → 프로세스 생성 |
| 도커 이미지 1개 | 여러 개의 컨테이너 가능 |
| 프로그램 1개 | 여러 개의 프로세스 가능 |
docker pull nginx # 최신 버전 다운로드
docker pull nginx:1.25 # 특정 버전 다운로드
docker images
docker rmi nginx:1.25
docker run hello-world
docker ps -a
docker rm [컨테이너_ID]
docker rmi hello-world
도커 컨테이너 내부에서 실행되는 “주 프로세스”가 종료되면 컨테이너도 종료 됨.