1. Cloud
언제 어디서나 어떠한 단말을 가지고서라도 인터넷 접속만 가능하다면 사용한만큼 비용을 지불하고 원하는 IT 자원을 이용하는 것
- 설치할 필요 없음
- 통합된 환경 제공
- 사용한 만큼 비용 지불
CSP(Cloud Service Provider)
- AWS
- Azure(MS)
- GCP(Google Cloud Platform)
- 알리바바
- KT Ucloud
- Naver Cloud
Cloud의 5대 특징
- On Demand Self Service: 원하는 IT 자원은 관리자의 개입없이 사용 가능
- Broad Network Access: IT 자원은 원격지에 있으며, 여기에 접속하기 위해서는 인터넷 연결이 필요
- Resource Pooling: 클라우드 내에 있는 자원은 여러 사용자들이 공유할 수 있음
- Rapid Elasticity: 빠른 확장성.
- Measured Service: 측정 가능해야 한다.
2. Docker
- 컨테이너 기반의 오픈소스 가상화 플랫폼
- 다양한 프로그램 및 실행 환경을 컨테이너로 추상화 하고, 동일한 인터페이스를 제공하여 프로그램의 배포 및 관리르 단순화
컨테이너
- Image를 실행한 상태
- 격리된 공간에서 프로세스가 동작하는 기술
- 가상화 기술의 하나이지만 기존 방식과 차이가 있음
→ 기존 방식이 OS 가상화(Overhead 큼)였다면, 단순히 프로세스를 격리시키기 때문에 가볍고 빠르다. (경량화) - CPU나 Memory 역시 필요한 만큼 추가로 사용 가능, 성능적으로 손실이 거의 없음
Image
- 컨테이너 실행에 필요한 파일과 설정 값 등을 포함하고 있는 것. 불변(Immutable)
- 하나의 이미지로 여러 개의 컨테이너를 생성할 수 있으며, 컨테이너 상태 변경 및 삭제 시에도 이미지는 변하지 않고 그대로 남음
- 컨테이너 실행을 위한 모든 정보 보유 → 설치 및 컴파일 불필요
- 이미지는 모두 https://hub.docker.com/에 있다.
3. Docker 실습
3.1. 명령어
docker 실행
- systemctl start docker
이미지 검색
- docker search httpd
이미지 다운로드
- docker pull httpd
이미지 확인
- docker images
이미지 삭제
- docker rmi nginx
프로세스 확인
- docker ps -a
사용중인 이미지 삭제(실행중인 컨테이너에는 지장 없음)
- docker rmi -f alpine
실행중인 컨테이너 삭제
- docker rm -f al
3.2. Docker 설치
※ 필수 패키지 설치
# yum install -y yum-utils device-mapper-persistent-data lvm2
※ Repository 설정
# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# yum-config-manager --enable docker-ce-nightly
※ Docker Community Edition 설치
※ Docker 실행
※ 시스템 재시작 시 Docker 자동실행 설정
3.3. Docker 간단한 실습해보기
※ Docker 명령어 확인
※ hello-world 실행해보기
※ 도커 프로세스 확인
※ Container ID 이용하여 프로세스 강제 종료
※ 도커 httpd 실행
- 포트포워딩: 외부에서 8080으로 실행 → 내부에서 80으로 실행
※ 웹 브라우저에서 접속 테스트 해보기
※ 여러개 실행해보기
- 여러 개를 한꺼번에 실행할 수 있으며, 매우 빠르고 가벼운걸 볼 수 있다.
- 도커의 가장 큰 장점은 가상머신에 비해 매우 가볍다 (경량화)
※ 도커 프로세스 지우기
- 실행 중인 프로세스 삭제 시 에러 발생 -f 옵션 사용
3.4. Docker 실습 2
※ https://hub.docker.com/사이트에서 회원가입 진행
※ 리포지토리 생성
※ 도커 Image 검색
방법 1. docker search 명령어 이용하여 검색
방법 2. https://hub.docker.com/에서 검색
※ Image 클릭해서 들어가면 다운로드 방법 확인 가능하다.
- 버전 주지 않을 경우 최신 버전 다운로드
※ Image 확인
※ image 삭제
※ centos 다운로드 방법 확인후 받기
3.5 원격 레지스트리에 올리기
※ 이미지 이름 변경 (변경하지 않으면 올릴 수 없음)
※ 로그인 진행
※ 리포지토리에 Image 올리기
※ 리포지토리에 올라 왔는지 확인
Reference.
'Linux > Docker' 카테고리의 다른 글
33. CentOS7 : Container를 이용하여 Load Balancer 환경 구성 (0) | 2022.06.07 |
---|---|
32. CentOS7 : Docker Network (0) | 2022.06.07 |
31. CentOS7 : Docker - 컨테이너 내부 파일 변경(docker cp, volume, 바인드 마운트 (0) | 2022.06.07 |
28. CentOS7 : Docker - nginx, httpd, alpine, network (0) | 2022.05.31 |
27. CentOS7 : Docker - httpd, alpine (0) | 2022.05.31 |