Harbor是一个企业级Docker镜像仓库。
文章目录
- 1. 什么是Docker私有仓库
- 2. Docker有哪些私有仓库
- 3. Harbor简介
- 4. Harbor安装
1. 什么是Docker私有仓库
Docker私有仓库是用于存储和管理Docker镜像的私有存储库。Docker默认会有一个公共的仓库Docker Hub,而与Docker Hub不同,私有仓库是受限访问的,只有授权用户才能够上传. 下载和管理其中的镜像。这种私有仓库可以部署在本地云环境中,用于组织内部开发. 测试和生产环境中的容器镜像管理。保证数据安全性。
2. Docker有哪些私有仓库
以下是一些常见的Docker私有仓库:
- Harbor:作为一个企业级的Docker Registry服务,Harbor提供了安全. 可信赖的镜像存储和管理功能。它支持RBAC权限控制. 镜像复制. 镜像签名. 漏洞扫描等功能。
- Docker Trusted Registry (DTR):由Docker官方推出的企业级Docker私有仓库服务,与Docker Engine紧密集成,支持高度的安全性和可靠性。
- Portus:一个开源的Docker镜像管理和认证服务,提供用户管理. 团队管理. 镜像审核等功能,与Docker Registry兼容。
- Nexus Repository Manager:虽然主要是用于构建和管理Java组件,但也可以用作Docker私有仓库。它具有强大的存储管理和权限控制功能。
- GitLab Container Registry:GitLab集成了容器注册表功能,允许您存储. 管理和分发Docker镜像。这是GitLab自带的功能,无需额外部署。
- AWS Elastic Container Registry (ECR):如果使用AWS云服务,可以考虑使用AWS ECR作为私有仓库。它与AWS的其他服务集成紧密,对AWS用户来说是一个方便的选择。
本篇使用Harbor搭建Docker私有仓库。
3. Harbor简介
Harbor是一个开源的企业级Docker Registry服务,它提供了一个安全. 可信赖的仓库来存储和管理Docker镜像。Harbor翻译为中文名称为"庇护;居住;“。可以理解为是Docker镜像的"居住环境"或者是镜像的"庇护所”。Harbor最初由VMware公司开发,旨在解决企业级Docker镜像管理的安全和可信任性问题。VMware于2016年发布,在2017年,VMware将Harbor开源,这使得更广泛的社区和组织可以自由地使用和贡献代码。Harbor是一个成熟. 功能丰富且安全可靠的企业级Docker Registry服务,为企业容器化应用的部署和管理提供了强大的支持。
Harbor官网地址:Harbor (goharbor.io)
Github开源地址:https://github.com/goharbor/harbor
4. Harbor安装
提前默认安装docker docker-compose
# 1. 下载Harbor offline安装包
wget https://github.com/goharbor/harbor/releases/download/v2.2.2/harbor-offline-installer-v2.2.2.tgz
# 2. 解压安装包
tar xvf harbor-offline-installer-v2.2.2.tgz
# 3. 修改配置文件harbor.yml
mkdir -p /home/harbor_install
\cp -r harbor/* /home/harbor_install
cd /home/harbor_install
\cp -r harbor.yml.tmpl harbor.yml
# 替换主机名
sed -i 's#reg.mydomain.com#192.168.56.10#g' harbor.yml
sed -i 's/https/#https/g' harbor.yml
sed -i 's/port: 443/#port: 443/g' harbor.yml
sed -i 's/certificate:/#certificate:/g' harbor.yml
sed -i 's/private_key:/#private_key:/g' harbor.yml
sed -i 's#data_volume: /data#data_volume: /home/harbor_install/harbor#g' harbor.yml
# 4. 安装Harbor
./install.sh
# 5. 访问Harbor UI
# 打开浏览器并访问 http://<hostname>:80 来使用Harbor
admin/Harbor12345
jenkins harbor安装
Jenkins参数化构建详解(This project is parameterized)