반응형
1. 프로젝트 생성 방법
- harbor 웹 콘솔 접속하여 로그인
- Project 탭의 NEW Project 클릭
3. Project 값 입력
커맨드 확인
2. 이미지 태그 및 PUSH 방법
docker pull nginx:latest
테스트 이미지용 nginx:latest 다운로드
docker login 192.168.133.11
harbor(사설저장소) docker 로그인
docker tag nginx:latest 192.168.133.11/test/nginx:latest
docker push 192.168.133.11/test/nginx
tag 명령어로 사설저장소 주소 추가 후 push
웹 콘솔 접속하여 저장소에 이미지가 잘 올라갔는지 확인
3. 쿠버네티스 secret 작성 (imagePullSecret 용)
https://kubernetes.io/ko/docs/tasks/configure-pod-container/pull-image-private-registry/
참고
kubectl create secret generic regcred \\
--from-file=.dockerconfigjson=<path/to/.docker/config.json> \\
--type=kubernetes.io/dockerconfigjson
regcred 대신 원하는 secret 이름 입력해도 됨.
- docker login 을 하면 ~/.docker 아래 config.json 파일이 생기는데 여기에 로그인 정보를 담고 있음
base64 decode 하면 auth 의 내용을 확인할 수 있다.
4. 쿠버네티스에서 이미지 사용
nginx-test.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
imagePullSecrets:
- name: regcred
containers:
- name: nginx
image: 192.168.133.11/test/nginx:latest
ports:
- containerPort: 80
imagePullSecrets: 항목에 위에 만든 regcred secret 추가
kubectl apply -f nginx-test.yaml
계속해서 ImagePullBackOFF 에러가 뜰 시
- 이미지 경로가 제대로 되었는지 확인
- ImagePullSecret 에 제대로 image repository 인증정보가 들어가있는지 확인
- 각 노드들 OS 에 서버 인증서를 전달했는지 확인 (하버 OS 인증서 등록과 동일하게)
(인증서 적용 이후 K8S Container 재기동 필수 (Containerd))
728x90
반응형
'IT 공부 > PaaS' 카테고리의 다른 글
K8S 에서 containerd 와 docker (0) | 2024.05.29 |
---|---|
[Harbor] 사설 image repository Harbor 설치 방법 정리 (0) | 2024.04.11 |
[K8S] MetalLB 설치 (0) | 2024.02.20 |
[K8S] 9. AutoScaling & Scheduler (0) | 2024.01.22 |
[K8S] 8. Statefulset (0) | 2024.01.20 |