RockyLinux docker 발표 1-1(기본 개념)

Docker를 사용하는 가장 큰 이유
- 이식성 : 특정 프로그램을 다른 곳으로 쉽게 옮겨서 설치 및 실행할 수 있는 특성
→ Docker를 사용하면 명령어 한 줄로 어떤 컴퓨터든 에러 없이 설치가 가능하며, 실행할 수 있게 됨.
Docker의 장점
- 매번 귀찮은 설치 과정을 일일이 거치지 않아도 된다.
- 항상 일관되게 프로그램을 설치할 수 있다.(버전, 환경 설정, 옵션, 운영 체제 등)
- 각 프로그램이 독립적인 환경에서 실행되기 때문에 프로그램 간에 서로 충돌이 일어나지 않는다.
※ IP : 특정 컴퓨터를 가리키는 주소
※ Port : 한 컴퓨터 내에서 실행되고 있는 특정 프로그램의 주소
Docker란??
- 컨테이너를 사용하여 각각의 프로그램을 분리된 환경에서 실행 및 관리할 수 있는 툴.
Container란?
- 하나의 컴퓨터 환경 내에서 독립적인 컴퓨터 환경을 구성해서, 각 환경에 프로그램을 별도로 설치할 수 있게 만든 개념.
- 하나의 컴퓨터 환경 내에서 여러개의 미니 컴퓨터(=컨테이너) 환경을 구성할 수 있는 형태

- 여기서 '컨테이너'와 '컨테이너를 포함하고 있는 컴퓨터'를 구분하기 위해 컨테이너를 포함하고 있는 컴퓨터를 '호스트(host) 컴퓨터'라고 부른다.
Container의 독립성
- 독립적으로 다른 환경과 분리해서 서로 영향을 끼치지 않는 환경을 가지고 있다.
- 각 컨테이너마다 서로 각자의 저장 공간을 가지고 있다.
- 각 컨테이너마다 각자의 고유의 네트워크를 가지고 있다.
→ 컨테이너마다 IP를 다르게 부여함
Image란??
- 프로그램을 실행하는 데 필요한 설치 과정, 설정, 버전 정보 등을 포함
- 즉, 프로그램을 실행하는 데 필요한 모든 것을 포함