edgexfoundry

 找回密码
 立即注册
搜索
热搜: meta core rules
查看: 12162|回复: 0

docker搭建registry2 ubuntu 16.04

[复制链接]

10

主题

10

帖子

562

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
562
发表于 2018-10-22 10:26:33 | 显示全部楼层 |阅读模式
本帖最后由 灰哥哥 于 2018-10-26 21:09 编辑

1、docker 用户进ubuntu

2、执行如下命令
  1. docker run -d -p 5000:5000 --restart=always -v /opt/data/registry:/var/lib/registry registry:latest
复制代码
这样就搭建好了,

3、验证
  1. myEdgex@instance-nbpv5z80:~/docker-compose$ curl http://localhost:5000/v2/_catalog
  2. {"repositories":[]}
复制代码
有返回{"repositories":[]} ,说明安装成功了。

4、配置registry2
    在使用之前,修改配置一下(需要root用户权限)
  1. vim /lib/systemd/system/docker.service
复制代码
按下图修改:



重启docker:
  1. myEdgex@instance-nbpv5z80:~/docker-compose$ sudo systemctl daemon-reload
  2. myEdgex@instance-nbpv5z80:~/docker-compose$ sudo systemctl restart docker.service
复制代码


查看状态:
  1. sudo systemctl status docker.service
复制代码


5、使用registry2


5.1 制作镜像

  1. sudo docker build -t my/volume .
复制代码
或导入镜像

  1. docker load -i myvolume.tar
  2. (导出方法 :sudo docker save -o myvolume.tar my/volume
复制代码



5.2、打tag

  1. docker tag etrol/volume 127.0.0.1:5000/my/volume
复制代码


5.3、push 到 registry

  1. docker push 127.0.0.1:5000/my/volume
复制代码


6、配置带用户权限的registry


registry已经可以使用了。如果想要控制registry的使用权限,使其只有在登录用户名和密码之后才能使用的话,还需要做额外的设置。

registry的用户名密码文件可以通过htpasswd来生成:



  1.     mkdir /opt/registry/auth/  
  2.     docker run --entrypoint htpasswd registry:2.1.1 -Bbn root 123456 >> /opt/registry/auth/htpasswd  
复制代码

上面这条命令是为root用户名生成密码为123456的一条用户信息,存在/opt/registry/auth/htpasswd文件里面,文件中存的密码是被加密过的。

使用带用户权限的registry时候,容器的启动命令就跟上面不一样了,将之前的容器停掉并删除,然后执行下面的命令:


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



这时,如果直接想查看仓库信息、pull或push都会出现权限报错。必须先使用docker login 命令来登录私有仓库



  1.     docker login 192.168.0.100:5000
复制代码

根据提示,输入用户名和密码即可,输入 用户root ,密码123456



如果登录成功,会在/root/.docker/config.json文件中保存账户信息,这样就可以继续使用了。




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ号:15599633|管理员邮箱:admin@edgexfoundry.net|Archiver|手机版|小黑屋|edgexfoundry ( 赣ICP备19008954号-1 )

GMT+8, 2022-8-10 21:37 , Processed in 0.045056 second(s), 22 queries .

© 2018-2029 edgexfoundry.net

快速回复 返回顶部 返回列表