서버 세팅 & tool/docker
[windows] docker; 컨테이너 가상화
방푸린
2024. 2. 10. 17:14
반응형
환경: windows11
virtualization
- 물리적인 컴퓨터 리소스를 다른 시스템이나 애플리케이션에서 사용할 수 있도록 제공
- 플랫폼 가상화
- 리소스 가상화
하이퍼바이저(hypervisor)
- Virtual machine manager(VMM)
- 다수의 운영체제를 동시에 실행하기 위한 논리적 플랫폼
- type1(native / bare metal): 하드웨어에 직접 하이퍼바이저를 설치해서 가상화 운영
- type2(hosted): 하드웨어 위에 os가 있고 그 위세 하이퍼바이저를 설치해서 가상화 운영
- 보통 사용 방식
OS virtualization; os 가상화
- host os 위에 guest os 전체를 가상화
- VMware, VirtualBox
- 자유도가 높으나 시스템에 부하가 많고 느려
- 여러 vm을 띄우면 중복적인 리소스가 반복적으로 사용하게 될 수도 있음
container virtualization; 컨테이너 가상화
- host os가 가진 리소스를 적게 사용하며 필요한 프로세스 실행
- 최소한의 라이브러리와 도구만 포함
- container의 생성 속도 빠름
- 중복 리소스 제거 가능. 도커 엔진이 가진 리소스 사용
컨테이너 이미지
- 컨테이너 실행에 필요한 설정 값 모두
- 이미지 안에 의존성을 이미 다 가지고 있기 때문에 별도 설치할게 없음
- 이미지를 가지고 실체화 한 것이 컨테이너
- 이미지 저장소: registry
- public registry: docker hub
- private registry 운영 가능
- 도커 호스트: 이미지를 실행할 수 있는 곳; 레지스트리에서 다운로드한 이미지를 실행
- run: create + start
dockerfile
- 도커 이미지를 생성하기 위한 스크립트 파일
- 자체 문법 DSL(domain specific language) 언어 사용하여 이미지를 생성하기 위한 과정을 기술
- docker desktop -> docker container 사용
docker desktop download
docker cmd를 사용하기 위해서는 docker desktop을 실행하여 docker daemon을 실행하여야 함
run 해보고 이상없는지 확인하기 위해 아무 cmd 열어서 아래 명령어 입력
docker info
현재 docker가 가지고 있는 image 확인
docker image ls
현재 docker실행중인 container
docker container ls
명령어
- create
- start 실행
- run = create + start 이미지 없으면 다운로드까지
- tag: version같은 것; 혹은 용도별 마킹/없으면 자동으로 lastest
- --name 이름 안 넣으면 랜덤 하게 됨; 중복 안됨, --rm 컨테이너 stop 하고 나서, -it iternative terminal, --link....
- 호스트=pc
Docker Hub Container Image Library | App Containerization
Increase your reach and adoption on Docker Hub With a Docker Verified Publisher subscription, you'll increase trust, boost discoverability, get exclusive data insights, and much more.
hub.docker.com
도커 이미지 관리; 다운로드 가능
docker pull ubuntu:16.04 //down
docker images | grep 16.04 //검색
docker run ubuntu:16.04 //실행 but 바로 종료
docker ps // 도커 컨테이너 실행중인것 확인
docker container ls -a //전체 히스토리 확인
docker container rm 컨테이너ID //컨테이너 삭제
728x90
반응형