ubuntu16.4创建仓库认证registry

来源:互联网 发布:凯瑟琳·哈尔西 知乎 编辑:程序博客网 时间:2024/06/16 12:37

ubuntu16.4创建私有仓库registry

1.安装docker

本地测试环境:192.168.31.223
系统:Ubuntu 16.04

shell> sudo apt-get install apt-transport-https ca-certificatesshell> sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609Dshell> lsb_release -cshell> sudo cat <<EOF > /etc/apt/sources.list.d/docker.listdeb https://apt.dockerproject.org/repo ubuntu-xenial mainEOFshell> vim  /etc/apt/sources.list.d/docker.listshell> sudo apt-get updateshell> sudo apt-get install -y linux-image-extra-$(uname -r)shell> apt-cache policy docker-engine (查看下现有的源)shell> sudo apt-get install -y docker-engine=1.12.6-0~ubuntu-xenial (指定安装的版本)
  • 检查是否安装完毕
shell> docker --version
  • 显示结果如下
Docker version 1.12.6, build 78d1802

2.安装registry

  • 创建密码文件
shell> mkdir -p /docker-hub/authdocker run --entrypoint htpasswd registry -Bbn testuser testpassword > auth/htpasswd

说明:testuser testpassword为仓库用户名和密码
- 启动docker-hub容器

shell> docker run -d -p 5000:5000 --restart=always --name registry  -v /docker-hub/registry:/var/lib/registry  -v /docker-hub/auth:/auth -e "REGISTRY_AUTH=htpasswd" -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd registry

image
- 测试使用

1.不验证身份下上传一个镜像到私有仓库

shell> docker push 192.168.31.223:5000/busybox结果失败:The push refers to a repository [192.168.31.223:5000/busybox]6a749002dd6a: Image push failed 

2.验证身份后上传一个镜像到私有仓库

shell> docker login 192.168.31.223:5000/busybox

输入用户名和密码,提示Login Succeeded表示登录成功,再次上传

shell> docker push 192.168.31.223:5000/busybox显示如下:The push refers to a repository [192.168.31.223:5000/busybox]6a749002dd6a: Pushed latest: digest: sha256:545e6a6310a27636260920bc07b994a299b6708a1b26910cfefd335fdfb60d2b size: 527[root@agrichains-ProLiant-MicroServer-Gen8~]$ 表示上传成功
阅读全文
0 0