一. 部署#
在一台CentOS上, 从零开始安装Harbor.
需要:
Docker 安装#
1. 配置YUM源#
使用阿里云的源
1
2
| yum install wget -y
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
|
2. 安装最新版本Docker#
1
| yum install docker-ce docker-ce-cli -y
|
3. 修改Docker 配置文件#
1
2
3
4
5
6
7
8
9
10
11
12
| mkdir /etc/docker/
cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["https://gqs7xcfd.mirror.aliyuncs.com","https://hub-mirror.c.163.com"],
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
EOF
|
4. 启动Docker 服务#
1
| systemctl daemon-reload && systemctl enable docker && systemctl start docker
|
5. 安装指定版本docker#
列出所有Docker版本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| $ yum list docker-ce.x86_64 --showduplicates |sort
Available Packages
* base: mirrors.aliyun.com
....
docker-ce.x86_64 3:19.03.14-3.el7 docker-ce-stable
docker-ce.x86_64 3:19.03.15-3.el7 docker-ce-stable
docker-ce.x86_64 3:19.03.2-3.el7 docker-ce-stable
docker-ce.x86_64 3:19.03.3-3.el7 docker-ce-stable
docker-ce.x86_64 3:19.03.4-3.el7 docker-ce-stable
docker-ce.x86_64 3:19.03.5-3.el7 docker-ce-stable
docker-ce.x86_64 3:19.03.6-3.el7 docker-ce-stable
docker-ce.x86_64 3:19.03.7-3.el7 docker-ce-stable
docker-ce.x86_64 3:19.03.8-3.el7 docker-ce-stable
docker-ce.x86_64 3:19.03.9-3.el7 docker-ce-stable
docker-ce.x86_64 3:20.10.0-3.el7 docker-ce-stable
......
* elrepo: mirrors.tuna.tsinghua.edu.cn
* epel: hkg.mirror.rackspace.com
* extras: mirrors.aliyun.com
Installed Packages
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* updates: mirrors.aliyun.com
|
选择一个版本,进行安装, 这里选择 19.03.0-3.el7
1
| yum -y install docker-ce-19.03.9-3.el7 docker-ce-cli-19.03.9-3.el7
|
Docker-compose 安装#
github的地址下载太慢,国内可以使用 http://get.daocloud.io/#install-compose 网站上面的地址。
下载docker-compose:
1
2
3
| curl -L https://get.daocloud.io/docker/compose/releases/download/v2.12.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
|
查看版本:
docker-compose -v
Harbor 安装#
在 harbor github release页面,下载2.6.1版本的离线安装包.
并解压
tar -zxvf harbor-offline-installer-v2.6.1.tgz
Harbor 配置#
修改配置
cp harbor.yml.tmpl harbor.yml
本机Http访问#
- 获取本机IP
ifconfig
,例如本机IP为 10.2.140.33
- 修改
hostname
为本机IP,10.2.140.33
- 修改
data_volume
数据存放路径 /data/harbor-data
- 修改
log/local/location
日志存放路径 /logs/harbor
- 修改
harbor_admin_password
admin 账户密码 - 注释Https相关配置, 否则无法启动.
校验: ./prepare --with-trivy --with-chartmuseum
启动: ./install.sh --with-chartmuseum --with-trivy
使用: 修改docker配置insecure-registries
1
2
3
4
5
6
7
8
| {
"registry-mirrors": [
"https://ck7t003t.mirror.aliyuncs.com"
],
"insecure-registries": [
"10.2.140.33"
]
}
|
外部Nginx Https域名转发访问.#
例如使用 harbor.demo.com 作为域名访问
- 修改
hostname
为harbor.demo.com
- 修改
external_url
为 https://harbor.demo.com
- 修改
data_volume
数据存放路径 - 修改
log/local/location
日志存放路径 - 修改
harbor_admin_password
admin 账户密码
校验: ./prepare --with-trivy --with-chartmuseum
启动: ./install.sh --with-chartmuseum --with-trivy
配置外部Nginx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| server {
listen 443 ssl;
server_name harbor.demo.com ;#修改为自己的域名
ssl_certificate ; #域名证书
ssl_certificate_key ; #域名证书
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://10.2.140.33:80;
client_max_body_size 0;
proxy_connect_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 6 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
|
二. LDAP接入#
登录Harbor>配置管理
>认证模式
选择认证模式为LDAP.

三. 参考#
- https://get.daocloud.io/#install-compose
- https://goharbor.io/
- https://github.com/goharbor/harbor