Harbor 是一个企业级的 Docker Registry,可以实现 images 的私有存储和日志统计权限控制等功能,并支持创建多项目(Harbor 提出的概念),基于官方 Registry V2 实现。
目标:在Ubuntu 16.04上搭建Harbor镜像仓库
环境:
Ubuntu-001:10.140.160.100 作为Harbor镜像仓库搭建机器
Ubuntu-004: 10.140.161.187 作为docker host去测试push pull镜像
前提条件:已安装python docker docker-compose
Python应该是2.7或更高版本
Docker引擎应为1.10或更高版本
Docker Compose需要为1.6.0或更高版本
Harbor 可以通过以下两种方式之一安装:(下载地址:https://github.com/vmware/harbor/releases)
- 在线安装程序:安装程序从Docker集线器下载Harbour的映像。因此,安装程序的尺寸非常小。
- 脱机安装程序:当主机没有Internet连接时,请使用此安装程序。安装程序包含预制图像,因此其大小较大。
本次演示离线安装过程:(我下载了离线安装包:harbor-offline-installer-v1.5.0.tgz)
1、解压harbor-offline-installer-v1.5.0.tgz
tar xzvf harbor-offline-installer-v1.5.0.tgz
2、进入harbor,修改harbor.cfg文件
root@Ubuntu-001:~/harbor# ll
total 854980
drwxr-xr-x 4 root root 4096 May 17 14:33 ./
drwx------ 16 root root 4096 May 17 14:33 ../
drwxr-xr-x 4 root root 4096 May 17 13:00 common/
-rw-r--r-- 1 root root 1185 May 2 23:34 docker-compose.clair.yml
-rw-r--r-- 1 root root 1725 May 2 23:34 docker-compose.notary.yml
-rw-r--r-- 1 root root 3596 May 2 23:34 docker-compose.yml
drwxr-xr-x 3 root root 4096 May 2 23:34 ha/
-rw-r--r-- 1 root root 6685 May 17 12:55 harbor.cfg
-rw-r--r-- 1 root root 875401338 May 2 23:36 harbor.v1.5.0.tar.gz
-rwxr-xr-x 1 root root 5773 May 2 23:34 install.sh*
-rw-r--r-- 1 root root 10771 May 2 23:34 LICENSE
-rw-r--r-- 1 root root 482 May 2 23:34 NOTICE
-rwxr-xr-x 1 root root 27379 May 2 23:34 prepare*
hostname = 10.140.160.100
我仅修改了hostname为我的宿主机ip
3、运行install.sh脚本
该脚本主要做了以下事情:
(1)检查docker docker-compose是否安装及版本
(2)将harbor.v1.5.0.tar.gz解压并docker load到主机
(3)环境准备
(4)依赖docker-compose.yml文件启动相关的容器
root@Ubuntu-001:~/harbor# ./install.sh
[Step 0]: checking installation environment ...
Note: docker version: 17.12.0
Note: docker-compose version: 1.19.0
[Step 1]: loading Harbor images ...
52ef9064d2e4: Loading layer [==================================================>] 135.9MB/135.9MB
c169f7c7a5ff: Loading layer [==================================================>] 154.2MB/154.2MB
a2194b3a5434: Loading layer [==================================================>] 10.75MB/10.75MB
f3809b773329: Loading layer [==================================================>] 2.048kB/2.048kB
bdd2cd4d5394: Loading layer [==================================================>] 48.13kB/48.13kB
bce61638a813: Loading layer [==================================================>] 10.8MB/10.8MB
Loaded image: vmware/clair-photon:v2.0.1-v1.5.0
0bf5fb4e60f4: Loading layer [==================================================>] 95MB/95MB
9fc876f7ef97: Loading layer [==================================================>] 6.656kB/6.656kB
9f364ae08e7f: Loading layer [==================================================>] 2.048kB/2.048kB
d8e357