Debian 도커 이미지의 경우 apt update 부터 실행해야 할 정도로 날 것이기 때문에 최소한의 사용에 맞게 설정해야 할 필요가 있다. 이번에는 별도의 컴퓨터에 Registry를 설치해서 push와 pull 을 할 수 있도록 했다.
인터넷에서 관련 정보를 찾으면 보통 registry 이미지를 5000번 포트를 이용해서 사용하는 예제들이 있다. 이를 따라해 보도록 한다.
# sudo docker run --name private-repository -d -p 5000:5000 registry
이미지를 build 할 때 IP 와 포트 등을 지정한다.
# sudo docker build 192.168.88.250:5000/byun1114/my-debian
Docker는 설치 단계에서 repository 의 정보를 받을 때 HTTPS를 이용한다. 그래서 그런지 build 할 때에도 기본적으로 https를 이용하는 것을 전제하고 있다. HTTPS를 이용하지 않는다면 오류가 발생한다. “http: server gave HTTP response to HTTPS client” 이런 오류 메세지가 나타나면 2가지 방법으로 해결할 수 있다고 하는데 그 중에 하나인 daemon.json 을 이용하는 방법을 사용하였다. 이 방법은 Docker 를 build 하는 컴퓨터에서 적용하는 것이다. 이 파일의 내용을 추가한 다음 Docker 를 재시작하고 build 하면 된다.
/etc/docker/daemon.json
{
"insecure-registries": ["192.168.88.250:5000"]
}