Harbor 安装与使用
特性
基于角色的访问控制
:用户通过 “项目” 进行组织管理,可以对多个仓库在同一命名空间里有不同的权限。镜像复制
:镜像可以在多个 Registry 实例中复制(同步)。尤其适合于负载均衡,高可用,混合云和多云的场景。图形化用户界面
:用户可以通过浏览器来浏览,检索当前 Docker 镜像仓库,管理项目和命名空间。AD/LDAP 支持
:Harbor 可以集成企业内部已有的 AD/LDAP,用于鉴权认证管理。审计管理
:所有针对镜像仓库的操作都可以被记录追溯,用于审计管理。国际化
:已拥有英文、中文、德文、日文和俄文的本地化版本。更多的语言将会添加进来。RESTful API
:RESTful API 提供给管理员对于 Harbor 更多的操控,使得与其它管理软件集成变得更容易。部署简单
:提供在线和离线两种安装工具, 也可以安装到 vSphere 平台 (OVA 方式) 虚拟设备。
安装
1、安装依赖
yum install -y yum-utils
# yum install -y yum-utils device-mapper-persistent-data lvm2 wget
2、添加阿里云安装源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、安装Docker
yum install -y docker-ce
4、启动docker
systemctl restart docker.service
5、获取docker-compose
curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
6、添加执行权限
chmod +x /usr/local/bin/docker-compose
7、查看版本
docker version
docker-compose version
8、下载、解压 harbor
tar zxf harbor-offline-installer-v2.3.0.tgz -C /usr/local/
9、配置文件
# 进入harbor目录
cd /usr/local/harbor/
# 拷贝模板配置文件
cp harbor.yml.tmpl harbor.yml
# 编辑harbor配置文件
vi harbor.yml
hostname: 172.26.209.51
harbor_admin_password: Harbor12345
database:
password: root123
max_idle_conns: 100
max_open_conns: 900
data_volume: /data
trivy:
ignore_unfixed: false
skip_update: false
insecure: false
jobservice:
max_job_workers: 10
notification:
webhook_job_max_retry: 10
chart:
absolute_url: disabled
log:
level: info
local:
rotate_count: 50
rotate_size: 200M
location: /var/log/harbor
_version: 2.3.0
proxy:
http_proxy:
https_proxy:
no_proxy:
components:
- core
- jobservice
- trivy
10、安装harbor
./prepare
./install.sh
使用
1、重启
# 停止
docker-compose stop
# 启动
docker-compose up -d
2、无法登陆
dial tcp xx:443: connect: no route to host
########## Client Client Server Server ##########
vi /etc/docker/daemon.json
########## Client Client Server Server ##########
{
"registry-mirrors": ["https://giuzc4qh.mirror.aliyuncs.com"],
"insecure-registries": ["192.168.111.111"],
}
systemctl daemon-reload && systemctl restart docker
# 登录到harbor
docker login 192.168.111.111 -uzheng -pZxt19960417
systemctl daemon-reload && systemctl restart docker && docker login 192.168.111.111 -uzheng -pZxt19960417
3、Docker权限
# 如果 docker ps 报错没有权限, 创建docker用户组
sudo groupadd docker
# 将当前登陆用户加入到docker用户组中
sudo gpasswd -a $USER docker
# 更新用户组
newgrp docker
4、开机自启
vi /lib/systemd/system/harbor.service
#####
[Unit]
Description=Harbor
After=docker.service systemd-networkd.service systemd-resolved.service
Requires=docker.service
Documentation=http://github.com/vmware/harbor
[Service]
Type=simple
Restart=on-failure
RestartSec=5
ExecStart=/usr/local/bin/docker-compose -f /usr/local/harbor/docker-compose.yml up
ExecStop=/usr/local/bin/docker-compose -f /usr/local/harbor/docker-compose.yml down
[Install]
WantedBy=multi-user.target
#####
systemctl enable harbor
systemctl start harbor
5、防火墙
# 查看防火墙状态
firewall-cmd --state
# 关闭防火墙
systemctl stop firewalld.service
# 禁止防火墙开机自启
systemctl disable firewalld.service
评论区