출처 :15단계로 배우는 도커와 쿠버네티스
도커 컨테이너 란?
가상서버: 가상화 소프트웨어를 사용하여 하드웨어를 공유
한대의 머신에서도 여러대의 가상서버 기동 가능
컨테이너: 하나의 리눅스 프로세스가 전용서버같은 분리 상태
도커 장점
- 인프라 사용률 향상
- 빠른 기동 시간
- 종속성 배체(개발, 운영환경 차이 극복)
가상서버부터 컨테이너 도식도
도커 구성
도커 데몬은 도커 오브젝트인 이미지, 컨테이너, 볼룸, 네트워크 등을 관리
도커 이미지
이미지는 읽기 전용인 컨테이너 템프릿(실행+설정 파일)
도커 컨테이너
하나의 프로세스로 다른 프로세스와 격리된다.
도커 레지스트리
컨테이너 이미지 보관소
등등 추가 공부 예정
컨테이너 구성 환경
vmware
ubuntu 22.04 기준 작성
vmware 설치
- 가상환경 설정
vmware 다운로드
https://www.vmware.com/kr/products/workstation-player/workstation-player-evaluation.html
Download VMware Workstation Player | VMware
Download VMware Workstation Player for free today to run a single virtual machine on a Windows or Linux PC, and experience the multi-functional capabilities.
www.vmware.com
ubuntu 22.04 다운로드
https://releases.ubuntu.com/22.04/
Ubuntu 22.04.4 LTS (Jammy Jellyfish)
Select an image Ubuntu is distributed on three types of images described below. Desktop image The desktop image allows you to try Ubuntu without changing your computer at all, and at your option to install it permanently later. This type of image is what m
releases.ubuntu.com
vmware에 ubuntu 설치
ubuntu를 설치한 후 터미널을 열어서
sudo apt install -y openssh-server
터미널에 설치해서
ip a
ip확인
MobaXterm으로 접속해서 나머지 작업 실행(터미널에서 그냥 해도됩니다.)
사전 패키지 업데이트 및 툴 설치
- 사전 업데이트
sudo apt-get update
sudo apt-get install -y curl vim git
- docker 설치
sudo apt install -y docker.io
sudo chmod 666 /var/run/docker.sock
sudo usermod -aG docker $USER && newgrp docker
docker --version
- minikube 설치
sudo curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube && rm minikube-linux-amd64
minikube start --driver=docker
https://minikube.sigs.k8s.io/docs/start/
minikube start
minikube is local Kubernetes
minikube.sigs.k8s.io
- kubectl 설치
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
sudo chmod +x kubectl
sudo mkdir -p ~/.local/bin
sudo mv ./kubectl ~/.local/bin/kubectl
sudo kubectl version -o json --client
https://kubernetes.io/ko/docs/tasks/tools/install-kubectl-linux/
리눅스에 kubectl 설치 및 설정
시작하기 전에 클러스터의 마이너(minor) 버전 차이 내에 있는 kubectl 버전을 사용해야 한다. 예를 들어, v1.29 클라이언트는 v1.28, v1.29, v1.30의 컨트롤 플레인과 연동될 수 있다. 호환되는 최신 버전
kubernetes.io
도커 컨테이너 작동
- docker 이미지 가져오기
docker pull nginx
- docker 컨테이너 실행하는 방법
docker run --name nginxx -d -p 18080:80 nginx
docker run = docker pull + create + start
(사실 create만해도 image pull 해줍니다.)
- docker 컨테이너 삭제하는 방법
docker rm nginxx
docker rm -f (컨테이너명)
-f을 붙이면 강제 종료
- 참고 inxx -d -p 1808
#도커 전체 삭제
docker rm -f $(docker ps -qa)
#도커 이미지 전체 삭제
docker rmi $(docker images -q)
출처: k-paas교육, 15단계로 배우는 도커와 쿠버네티스