## 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
```
- docker
- docker安装
- 数据持久化
- 镜像管理
- Dockerfile
- 镜像的分层
- add copy
- 构建实例
- 镜像的导入导出
- 清理构建空间
- 配置阿里云加速器
- docker网络模型
- 本地仓库
- registry
- harbor
- IDEA部署docker
- 软件安装
- 安装es
- 安装MongoDB
- 安装rabbitmq
- 安装redis
- 安装nacos
- 安装mysql
- Minio
- 镜像中心
- kubernetes
- 1. 安装k8s
- 2.主要组件
- 3.污点
- 4.pod
- 5.控制器
- 6.网络
- 7.探针
- 8.安装Dashbord
- 9.secret
- 9.serviceAccount
- 10.service
- 资源清单
- kube-proxy
- flannel源文件
- 服务升级
- 笔记
- 镜像