Harbor 介绍
Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。
环境、软件准备
Linux CentOS 7.3
Docker(version:1.12.6)
Docker-compose(version:1.17.1)
Harbor (version:1.1.2)
docker 安装
docker安装步骤在另一篇文章汇总有描述:docker安装、操作常用命令。
docker-compose安装
pip install -U docker-compose
Harbor 服务搭建
下载Harbor安装文件
从 github harbor 官网 release 页面下载指定版本的安装包。
wget https://github.com/vmware/harbor/releases/download/v1.1.2/harbor-online-installer-v1.1.2.tgz
tar xvf harbor-online-installer-v1.1.2.tgz
配置Harbor
解压缩之后,目录下会生成harbor.cfg文件,该文件就是Harbor的配置文件。
# 1. hostname设置访问地址,可以使用ip、域名,不可以设置为127.0.0.1或localhost
# 2. 默认情况下,harbor使用的端口是80,若使用自定义的端口,除了要改docker-compose.yml文件中的配置外,
# 这里的hostname也要加上自定义的端口,都在在docker login、push时会报错
hostname = 10.0.11.150:5000
# 访问协议,默认是http,也可以设置https,如果设置https,则nginx ssl需要设置on
ui_url_protocol = http
# mysql数据库root用户默认密码root123,实际使用时修改下
db_password = root123
#Maximum number of job workers in job service
max_job_workers = 3
#The path of secretkey storage
secretkey_path = /data
# 启动Harbor后,管理员UI登录的密码,默认是Harbor12345
# 若修改了此处的admin登录密码。则登录后台时使用修改后的密码
harbor_admin_password = Harbor12345
# 认证方式,这里支持多种认证方式,如LADP、本次存储、数据库认证。默认是db_auth,mysql数据库认证
auth_mode = db_auth
# 是否开启自注册
self_registration = on
# Token有效时间,默认30分钟
token_expiration = 30
# 用户创建项目权限控制,默认是everyone(所有人),也可以设置为adminonly(只能管理员)
project_creation_restriction = everyone
注意:最好集群中所有节点都添加上这句,这样每个节点在pull
、push
时都会正常了。