💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
## 1. Harbor 的主要功能 * 基于角色的访问控制 > 用户与Docker镜像仓库通过“项目”进行组织管理,一个用户可以对多个镜像仓库在同一命名空间(project)里有不同的权限。 * 基于镜像的复制策略 > 镜像可以在多个Registry实例中复制(可以将仓库中的镜像同步到远程的Harbor,类似于MySQL主从同步功能),尤其适合于负载均衡,高可用,混合云和多云的场景。 * 图形化用户界面 > 用户可以通过浏览器来浏览,检索当前Docker镜像仓库,管理项目和命名空间。 * 支持 AD/LDAP > Harbor可以集成企业内部已有的AD/LDAP,用于鉴权认证管理。 * 镜像删除和垃圾回收 > Harbor支持在Web删除镜像,回收无用的镜像,释放磁盘空间。image可以被删除并且回收image占用的空间。 * 审计管理 > 所有针对镜像仓库的操作都可以被记录追溯,用于审计管理。 * RESTful API > RESTful API 提供给管理员对于Harbor更多的操控, 使得与其它管理软件集成变得更容易。 * 部署简单 > 提供在线和离线两种安装工具, 也可以安装到vSphere平台(OVA方式)虚拟设备。 Harbor 的所有组件都在 Docker 中部署,所以 Harbor 可使用 Docker Compose 快速部署。 注意: 由于 Harbor 是基于 Docker Registry V2 版本,**所以 docker 版本必须 > = 1.10.0 docker-compose >= 1.6.0** ## 2. 部署 1. 下载二进制压缩包,然后执行解压命令 ~~~ tar -zxvf harbor-offline-installer-v2.2.1.tgz ~~~ 2. 解压后进入文件夹,如果有harbor.yml文件就直接改,如果只有harbor.yml.tmp1,就需要拷贝并重命名一个harbor.yml文件出来 ~~~ cp harbor.yml.tmpl harbor.yml ~~~ 3. 修改配置文件harbor.yml,主要是修改以下三个配置: * hostname:填写本机的IP地址或者hostname,如果已经和域名绑定了也可以填域名; * harbor\_admin\_password:管理员初始密码; * https,如果不用https,必须用#注释掉 4. 安装docker并启动 5. 安装docker-compose ~~~ curl -L "https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose ~~~ ~~~ chmod +x /usr/local/bin/docker-compose ~~~ ~~~ docker-compose --version ~~~ 6. 安装harbor ``` ./install.sh ``` 访问 http://192.168.56.10/harbor/sign-in ![](https://img.kancloud.cn/02/ea/02eabb07ede99a0a8a88a2645da0bf62_916x771.png) ## 3. 推送和管理镜像 创建一个test公开项目 ![](https://img.kancloud.cn/7c/b5/7cb515b29609782e90180e28957d790e_1033x490.png) 1. 配置镜像仓库非https访问 ` vim /etc/docker/daemon.json ` ``` { "insecure-registries":["192.168.56.10:5000,192.168.56.10:80"] } ``` 2. 重启docker和harbor服务 ``` service docker restart docker-compose start ``` 3. 登录 注意:上一步配置的有端口,所以登录时不可以省略 ``` docker login 192.168.56.10:80 admin/Harbor12345 (默认,未修改) ``` 4. 打标签 ``` docker tag nginx 192.168.56.10:80/test/nginx:v1 ``` 5. 推送 ``` docker push 192.168.56.10:80/test/nginx:v1 ``` ![](https://img.kancloud.cn/79/bb/79bbbcd9c4a313bb30f4bfe3d3364479_503x139.png) 拉取 ``` docker pull 192.168.56.10:80/test/nginx:v1 ```