본문 바로가기
클라우드/Docker

Centos7 -Docker (Private Registry 구축)

by bigju 2021. 11. 18.

* 환경

VMware 10

Centos7

Docker 10

HP DL320e Gen8


* 시작 전 docker 가 깔려있어야 합니다.
https://bigju.tistory.com/entry/Centos7-Docker-%EC%84%A4%EC%B9%98

 

Centos7 - Docker 설치

* 환경 VMware 10 Centos 7.10 Docker 20.10.10 1. 패키지 업데이트 및 설치 sudo yum -y update sudo yum install yum-utils device-mapper-persistent-data lvm2 -y 2. Docker 리포지토리 시스템 추가 sudo yum-..

tistory.bigju.co.kr


192.168.0.219 : Docker Registry 서버
192.168.78.131 : Client 서버


Docker 의 최대 단점은 아무래도GUI 환경에서 다운로드 못가져간다는 점이다.

이에 대응 하기위해 Private Registry를 설치 해본다

 

*서버 간 이미지 PUSH, PULL을 위한 포트 5000번,  GUI 접속용 8080번 포트는 오픈 되어 있어야 한다..

 

<Docker Server>

1. docker registry image 

docker pull registry:latest

2. Docker Registry 실행 

docker run 명령으로 컨테이너를 실행한다.

cd /home

docker run -d --name registry -p 5000:5000 -v /home/registry:/var/lib/registry/docker/registry/v2 registry:latest


-d : 백그라운드로 실행

--name : 컨테이너 이름 지정

-p : 포트 바인딩 

-v : 볼륨 설정 (호스트와 컨테이너 간 디렉토리 공유)

 

<Docker Client>

 

1. 도커 허브에서 이미지 가져오기 

docker pull centos:latest

2. tag 설정하기 

레지스트리를 사용하기 위해 tag 형식을 [DOCKER_REGISTRY_IP]:[DOCKER_REGISTRY_PORT]/[REPOGITORY]/[IMAGE_NAME]:[TAG] 로 설정 해야 한다.

docker tag centos 192.168.0.218:5000/centos

3. 이미지 확인 및 PUSH 하기

<이미지 확인>

docker images

<이미지 PUSH 하기>

docker push 192.168.0.218:5000/centos

 


오류 확인하기

1. http: server gave HTTP response to HTTPS client 오류 발생 시 

/etc/docker/daemon.json 파일을 아래와 같이 수정 후 도커 데몬을 재시작 해준다

{
"insecure-registries":["192.168.56.101:5000"]
}
systemctl restart docker

 

2. 다시 이미지 PUSH 하기

docker push 192.168.0.218:5000/centos
 
3. 이미지 PULL 해보기 

기존 이미지를 삭제 하고 이미지 PULL 실행 


4. 확인해보기

curl -X GET http://192.168.0.218:5000/v2/_catalog

 

<Docker 서버>

 

6. Registry docker]서버에서 확인 하기

</home/registry/repositories 하위에 push 된 이미지가 저장 된다.>

 

7. GUI 지원하는 Docker Registry 설치

<docker-registry-web 설치를 위한 yaml 파일 작성>

vi /home/config.yuml

registry:
# 구성한 레지스트리 입력
url: http://192.168.0.218:5000/v2
# Docker registry name
name: docker private registry
# docker 권한 부여
readonly: false
auth:
enabled: false

#으로 적힌 글은 삭제 후 저장

:wq

8. 설정 시작

docker run -it -d -p 8080:8080 --name registry-web --link registry -v /home/config.yaml:/conf/config.yml:ro hyper/docker-registry-web

 

9. 접속 확인

http://ip:8080
Big Ju

댓글

메인으로가기


    

Big Ju

IT Engineer


항상 답을 위해 노력하는

엔지니어입니다.

 

 

    


 UP!