일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- game
- PC
- Games
- review
- 탈중앙화
- 블록체인
- angular
- threejs
- 이더리움
- 리뷰
- ps4
- 투자
- 부동산
- Docker
- strongloop
- 스마트 계약
- kubernetes
- Linux
- 쿠버네티스
- 주식
- 보안
- Three
- 스마트 컨트랙트
- 젤다 왕눈
- loopback
- 비트코인
- 암호화폐
- 게임
- 시장
- 거래
- Today
- Total
BaeBox
local registry 본문
이번에 해 볼 것은, 로컬에 있는 도커 이미지를 kubernetes 에서 실행하는 것이다.
cpu 에서 가상화를 지원해준다면 정말 쉽게 가능하겠지만( minikube 의 docker-env), 그렇지 않은 경우에는 우회할 필요가 있다.
CPU 가 가상화 기능을 지원하여 minikube start 명령어를 이용하여 클러스터를 구성하였다면, minikube docker-env 기능을 이용하여 로컬에 있는 docker image 를 사용 가능하다.
eval $(minikube docker-env)
반면에, CPU가 가상화 기능을 지원하지 않아 --vm-driver=none 옵션을 주고 클러스터를 구성하였다면 minikube 의 docker-env 기능을 이용할 수 없다. 그 외에도 ssh 기타 다른 명령어들도
그럴 때는 local registry를 이용하여 에둘러 local에 있는 docker image를 사용 가능하다.
하단 첫번째 링크의 세번째 방법을 그대로 정리하겠다.(링크 내용에서 여러 방법을 소개한다.)
방법은 간단하다.
localhost:5000 에 레지스트리(물론 컨테이너)를 만들어서 docker image 를 거기에 집어넣고(push) k8s 는 거기서 이미지를 가져온다(pull).
https://gist.github.com/coco98/b750b3debc6d517308596c248daf3bb1
위 링크의 yaml 파일을 적용하여 local registry를 띄운다.
자, 한 번 해보자.
- Docker images 명령어를 이용하여 이미지에 tag를 달고 registry 컨테이너에 push 한다.
- docker tag <image_name> localhost:5000/<image_name>
- Tag를 단 이미지를 registry에 push
- docker push localhost:5000/<image_name>
- 실행
- kubectl run --image=localhost:5000/<image_name>
해당 Registry에 어떤 이미지가 들어가 있는지는 아래 명령어를 통해 확인할 수 있다. 상단 링크에서 docker registry에 대해 조금 더 자세히 알아볼 수 있다.
curl -X GET localhost:5000/v2/_catalog?
https://blog.hasura.io/sharing-a-local-registry-for-minikube-37c7240d0615/
https://stackoverflow.com/questions/52310599/what-does-minikube-docker-env-mean
https://stackoverflow.com/questions/42564058/how-to-use-local-docker-images-with-minikube
https://docs.docker.com/registry/
'개발 관련' 카테고리의 다른 글
Deployment (배포) (0) | 2019.11.02 |
---|---|
Pod (포드) (0) | 2019.11.02 |
PersistentVolume / PersistentVolumeClaim (0) | 2019.11.02 |
Ingress (0) | 2019.11.02 |
Web UI(dashboard) 설치 (0) | 2019.11.02 |