docker仓库之分布式harbor (一)

时间:2024-01-28 15:56:33
1.harbor介绍
harbor是一个用于存储和分发docker镜像的企业级Registry服务器,由VMware开源。其通过添加一些企业必须的功能特性,例如安全,标识和管理,扩展了开源docker Distribution。作为一个企业级私有registry服务器,harbor提供了更好的性能和安全,提升用户使用registry构建和运行环境传输镜像的效率,harbor确保数据和知识产权在公司内部网络中管控,另外,harbor也提供了更高级的啊u去哪特性。注入用户管理,访问控制和活动审计。
https://github.com/vmware/harbor
https://vmware.github.io/harbor/cn/

 

2.harbor的功能
基于角色的访问控制,用户与docker镜像仓库通过项目进行组织管理,一个用户可以对多个镜像在同一命名空间(project)里面有不同的权限
镜像复制:镜像可以在多个registry实例中复制(同步)尤其适合于负载均衡,高可用,混合云和多云常见
图形化用户界面:用户可以通过浏览器来浏览。检索当前docker的镜像仓库,管理项目和命名空间。
AD/LAAP支:harbor可以集成企业内部已有的AD/LDAP,用于鉴权认证管理。
审计管理:所有针对镜像仓库的操作都可以被记录追溯,用于审计管理。
国际化:已拥有英文,中文,德文,日文和俄文的本地化版本,更多的语言将会添加进来。
RESTful API- RESTful API:提供给管理员对于harbor更多的操控,使得其管理软件集成变得更加容易。
3.harbor的安装
下载地址:https://github.com/vmware/harbor/releases
安装文档:https://github.com/vmware/harbor/blob/master/docs/installation guide.md
4.1服务器准备:   #我这里使用的Ubuntu server
10.0.0.110
4.2 服务器安装docker
这个步骤省略。。。。。。。。。。。。。。
4.3下载harbor安装包
#我提前下载好的安装包,可以去github下载,这里我直接配置了
root@ubuntu1804:~# cd /usr/local/src/
root@harbor-1:/usr/local/src/harbor# tar -xvf harbor-offline-installer-v1.7.6.tgz
4.4配置harbor
root@harbor-1:/usr/local/src/harbor# vim harbor.cfg
hostname = 10.0.0.110  #这里我用的ip地址做的,harbor默认的是基于https认证
harbor_admin_password = 12345      #harbor登录的密码

配置文件我就修改这两点,其他都是默认

root@harbor-1:/usr/local/src/harbor# ./install.sh 

[Step 0]: checking installation environment ...

Note: docker version: 20.10.2
✖ Need to install docker-compose(1.7.1+) by yourself first and run this script again.
4.5安装组件
root@harbor-1:/usr/local/src/harbor# sudo apt-get install python2.7
root@harbor-1:/usr/local/src/harbor# sudo apt install python-pip
root@harbor-1:/usr/local/src/harbor# curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
root@harbor-1:/usr/local/src/harbor# sudo chmod +x /usr/local/bin/docker-compose
root@harbor-1:/usr/local/src/harbor# ./install.sh
4.6安装完成
[Step 4]: starting Harbor ...
Creating network "harbor_harbor" with the default driver
Creating harbor-log ... done
Creating registry           ... done
Creating registryctl        ... done
Creating redis              ... done
Creating harbor-db          ... done
Creating harbor-adminserver ... done
Creating harbor-core        ... done
Creating harbor-jobservice  ... done
Creating harbor-portal      ... done
Creating nginx              ... done

✔ ----Harbor has been installed and started successfully.----

Now you should be able to visit the admin portal at http://10.0.0.110. 
For more details, please visit https://github.com/goharbor/harbor .
4.7查看本地镜像
root@harbor-1:/usr/local/src/harbor# docker images
REPOSITORY                      TAG             IMAGE ID       CREATED         SIZE
goharbor/chartmuseum-photon     v0.8.1-v1.7.6   ca4e65cc8cbf   17 months ago   114MB
goharbor/harbor-migrator        v1.7.6          bd65976b2563   17 months ago   680MB
goharbor/redis-photon           v1.7.6          477066fd0e02   17 months ago   109MB
goharbor/clair-photon           v2.0.8-v1.7.6   a65550304aa5   17 months ago   165MB
goharbor/notary-server-photon   v0.6.1-v1.7.6   1bfca6aac750   17 months ago   136MB
goharbor/notary-signer-photon   v0.6.1-v1.7.6   8535add7bfa5   17 months ago   133MB
goharbor/harbor-registryctl     v1.7.6          bb06dcda87fa   17 months ago   103MB
goharbor/registry-photon        v2.6.2-v1.7.6   8fa930eedbea   17 months ago   87.7MB
goharbor/nginx-photon           v1.7.6          fea7c162d250   17 months ago  
4.8web页面访问harbor管理界面
访问省略