[ 도커설치 ]
sudo yum -y update
sudo yum -y install docker
docker version
sudo yum -y install git
# demo 다운로드
git clone https://github.com/cloudnativedevops/demo
# 도커실행
sudo systemctl status docker
sudo systemctl start docker
# demo 실행
sudo docker container run -p 9999:8888 --name hello cloudnatived/demo:hello
*웹 브라우저 http://localhost:9999 로 들어가
Hello, 世界 글귀를 확인
[ 도커이미지 빌드 ]
sudo docker image build -t myhello .
sudo docker container run -p 9999:8888 myhello
# 도커 컨테이너 레지스트리
https://hub.docker.com/ 에서 도커계정생성
# 도커로그인
sudo docker login
...
Username : user_id
Password : ****
...
Login Succeeded
# 도커 이미지 푸쉬
sudo docker image tag myhello yourID/myhello
sudo docker image push yourID/myhello
# 인터넷이 연결된 곳이라면 어디서든 내 컨테이너 이미지 사용가능
sudo docker container run -p 9999:8888 yourID/myhello
[ 쿠버네티스 설치 ]
단일클러스터에서 실행이기 때문에 minikube 설치
curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube
sudo mkdir -p /usr/local/bin/
sudo install minikube /usr/local/bin/
* 아래와 같은 에러가 난다면
- docker: Not healthy: "docker version --format {{.Server.Os}}-{{.Server.Version}}" exit status 1: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/version": dial unix /var/run/docker.sock: connect: permission denied
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
참조 : https://docs.docker.com/engine/install/linux-postinstall/
minikube status
만약 클러스터가 실행 중이면, minikube status
의 출력은 다음과 유사해야 한다.
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured
정지시
minikube stop
[ 쿠버네티스로 데모 애플리케이션 실행 ]
kubectl run demo --image=yourID/myhello --port=9999 --labels app=demo
kubectl port-forward pod/demo 9999:8888
-> 웹 브라우저 http://localhost:9999 확인
kubectl get pods --selector app=demo
NAME READY STATUS RESTARTS AGE
demo 1/1 Running 0 6m9s
# Pod삭제시
kubectl delete pod 1234-56-7890-234234-456456
# Delete all pods
kubectl delete pods --all
# 포트포워딩 후 http://yourip:9999 브라우저에서 output확인
kubectl port-forward yourDir/demo 9999:8888