前提条件:docker
知足以上条件时就能够开始搭建了:安全
1. 生成用户密码文件:(运行下面命令后会在当前目录的auth目录下生成文件htpasswd,用户名:bounter,密码:111111)服务器
$ mkdir auth $ mkdir data $ docker run \ --entrypoint htpasswd \ registry:2 -Bbn bounter 111111 > auth/htpasswd
2. 当前目录添加 docker-compose.yml,内容以下:(注意把挂载的路径改为你服务器的实际路径)curl
registry: restart: always image: registry:2 ports: - 5000:5000 environment: REGISTRY_AUTH: htpasswd REGISTRY_AUTH_HTPASSWD_PATH: /auth/htpasswd REGISTRY_AUTH_HTPASSWD_REALM: Registry Realm volumes: - /home/simon/docker-registry/data:/var/lib/registry - /home/simon/docker-registry/auth:/auth
3. 启动:docker-compose up -durl
4. 客户端设置容许http不安全访问私有仓库:(vi /usr/lib/systemd/system/docker.service )spa
ExecStart=/usr/bin/dockerd --insecure-registry localhost:5000 systemctl daemon-reload systemctl restart docker
5. 操做私有仓库(加上认证以后必须先登陆才能推送和拉取)rest
1)登陆:docker login localhost:5000code
2)推送:blog
docker tag openjdk:8 localhost:5000/openjdk:8docker-compose
docker push localhost:5000/openjdk:8
3)拉取:docker pull localhost:5000/openjdk:8
4)查看:curl --user bounter:111111 localhost:5000/v2/_catalog