浅尝辄止,只讲基本的安装和使用
Harbor 官网:https://goharbor.io/
为什么要使用 harbor 作为搭建私有镜像仓库的系统:
- 权限控制强
- 操作可审计
- 镜像漏洞分析
- 镜像验真
- 镜像复制
- CNCF 官方毕业项目之一
- 等等
1.1 安装先决条件
部署 Harbor 的最低硬件配置:
资源 | 最低 | 推荐 |
---|---|---|
CPU | 2 CPU | 4 CPU |
内存 | 4 GB | 8 GB |
磁盘 | 40 GB | 160 GB |
对于磁盘的具体空间应按照时间镜像存储的多少来决定!
软件的版本要求
软件 | 版本 | 说明 |
---|---|---|
Docker engine | 17.06.0-ce 以上 | / |
Docker Compose | 1.18.0 以上 | / |
Openssl | 最新的优化(非强制) | 用于生成证书和密钥 |
网络端口
端口 | 协议 | 描述 |
---|---|---|
443 | HTTPS | 配置文件可更改,用于安全连接 |
4443 | HTTPS | 配置文件可更改,仅在 Notary 启用时启用 |
80 | HTTP | 非 https 连接端口,不推荐使用此端口,安全性较低 |
1.2 下载离线安装包
下载最新版本的离线安装包
下载地址:https://github.com/goharbor/harbor/releases
选择离线安装包即可!再上传到服务器指定目录下
mkdir -p /opt/docker_repository && cd /opt/docker_repository
解压安装包
tar xzvf harbor-offline-installer-v2.5.3.tgz
1.3 调整配置
http访问配置
配置文件各项参考地址:https://goharbor.io/docs/2.5.0/install-config/configure-yml-file/
cd harbor && cp harbor.yml.tmpl harbor.yml
vi harbor.yml
调整以下内容:
hostname
调整为:本机 ip 地址
https
调整为:注释相关配置
1.4 运行安装脚本
./install.sh
待所有镜像拉取和程序运行成功:
1.5 设置 HTTP 连接
需要修改 Docker 守护程序配置以支持 http 方式连接镜像仓库
将以下内容添加到/etc/docker/daemon.json文件中:
{
"insecure-registries" : ["192.168.204.111", "0.0.0.0"]
}
重启 Docker 和 Harbor
cd /opt/docker_repository/harbor && docker-compose down -v
systemctl restart docker
docker-compose up -d
1.6 web 端验证访问
浏览器输入所在 ip 地址:
默认账号密码:admin/Harbor12345
1.7 简单使用
修改默认账号密码
登陆后,点击右上角图示
选择【修改密码】后可进行密码修改
创建仓库的登陆用户
依次点击:【系统管理】-【用户管理】-【创建用户】即可
创建一个测试仓库
依次点击:【项目】-【新建项目】
填写新建项目的相关信息后确定即可,并调整刚才新建的项目仓库的访问权限:【项目】-【选择新建的项目名称】-【成员】进行维护即可
服务器登陆镜像仓库
docker login 192.168.204.111
输入创建的账号密码后即可登陆成功:
测试上传至镜像仓库
我们通过docker tag
修改下镜像的信息
docker tag nginx 192.168.204.111/ecm/nginx:v1.0
通过docker push
直接上传到我们的镜像仓库
docker push 192.168.204.111/ecm/nginx:v1.0
通过 web 端查看一下上传的镜像
测试从镜像仓库拉取
docker pull 192.168.204.111/ecm/nginx:v1.0
1.8 总结建议
- 企业生产环境建议开启 https 访问方式
- 对所有仓库项目使用权限进行详细控制
- 各项目仓库进行一个访问级别的控制
- harbor 支持漏洞扫描,需要额外开启
- 对于各项配置,建议详细阅读一番,参考官网即可:https://goharbor.io/docs/2.5.0/install-config/configure-yml-file/