docker学习笔记-docker Registry


Registry 用于保存docker镜像,包括镜像的层次结构和元数据
用户可自建Registry,也可以用广发的DockerHub
分类
Sponsor Registry: 第三方的registry,供客户和Docker社区使用
Mirror Registry:第三方的registry,只让客户使用
Vendor Registry:由发布Docker镜像的供应商提供
Private Registry:通过设置防火墙和额外的安全层的私有实体提供的registry
docker 默认是基于HTTPS 访问,可以指定HTTP
配置docker 守护进程的属性信息的方法:/etc/docker/daemon.json
每一个可设置的键是dockerd的可用选项,其值为选项的参数,但有些参数不可用于此文件中,如:add-registry,insecur-registry;
有些选项的参数是数组的格式,要放置于[];
官方手册(完整的可用参数列表)
https://docs.docker.com/engine/reference/commandline/dockerd/#run-multiple-daemons
[root@k8s-master ~]# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://2ukfyjyh.mirror.aliyuncs.com","https://registry.docker-cn.com"],
"insecure-registries":["k8s-master:5000"]
}
yum info docker-registry其实安装的是(docker-distribution)
yum install -y docker-registry(只是docker-distributiond 的一个别名或者封装名)
rpm -ql docker-distribution
root@k8s-master ~]# cat /etc/docker-distribution/registry/config.yml
version: 0.1
log:
fields:
service: registry
storage:
cache:
layerinfo: inmemory
filesystem:
rootdirectory: /data/registry
http:
addr: :5000
mkdir /data/registry
service docker-distribution start
docker images
docker tag web:v1 k8s-master:5000/web
[root@k8s-master ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
k8s-master:5000/web latest a64f4c742047 39 hours ago 1.2MB
docker push k8s-master:5000/web
去另一台机器
记得也需要更改默认HTTPS 的方式到HTTP
docker pull k8s-master:5000/web
私有仓库的软件
Harbor
yum -y install epel-release  扩展的包在EPEL(如python-pip,docker-compose) Harbor 要依赖docker-compose ,所以要安装
yum install docker-compose

推荐使用官网的方式安装可以安装最新版本:

https://docs.docker.com/compose/install/
curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

 hostnamectl set-hostname k8s.master.com

vim /etc/hosts
10.211.55.11 k8s.master.com

[root@k8s-master ~]# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://2ukfyjyh.mirror.aliyuncs.com","https://registry.docker-cn.com"],
"insecure-registries":["k8s.master.com"]
}
server docker restart

下载harbor 二进制离线包

https://github.com/goharbor/harbor/releases

wget https://storage.googleapis.com/harbor-releases/release-1.8.0/harbor-offline-installer-v1.8.1.tgz 

vim harbor.yml

配置文件解释
hostname:配置主机名称,不可以设置127.0.0.1,localhost这样的主机名,
ui_url_protocol:指定使用HTTP协议还是HTTPS协议。
Email settings:设置harbor的邮箱。
harbor_admin_password:设置管理员的初始密码
auth_mode:用户认证模式,默认是db_auth,也可以使用ldap验证。
db_password:使用db需要指定连接数据库的密码
self_registration:是否允许自行注册用户,默认是on,新版本可以在图形界面中修改。
max_job_workers:最大工作数,默认是三个
修改的参数
hostname= k8s.master.com

./prepare 

可以修改登录的密码和数据库的密码

./install.sh
安装成功

netstat -nulpt 
http://k8s.master.com
创建普通用户和仓库
比如 doudou 仓库名是devel
如果这时候重启docker服务这样可能有些对外的容器就关闭了,只需要用docker-compose start
docker-compose 单机编排容器的
cat docker-compose.yml 配置文件
docker tag web:v1 k8s.master.com/devel/web:v1
docker login k8s.master.com
docker push k8s.master.com/devel/web:v1

posted @ 2019-03-02 17:35  屌丝的IT  阅读(553)  评论(0)    收藏  举报