Harbor
- 本文资料主要来源于官方文档:https://github.com/vmware/harbor/blob/master/docs/installation_guide.md。
- Harbor在Github的地址:https://github.com/vmware/harbor。
- 本文中的Harbor是在linux3.10,Centos7.4的环境下安装的。
一些前情提要:
之前写了一系列的Nexus的文章,后来发现Nexus在管理Docker镜像中有个惊天Bug:Nexus无法物理删除Docker镜像。具体内容请见 XXX。
因为私有镜像一般都比较大,存储很快就耗尽了,只好重新寻找镜像管理工具。Portus和Harbor是比较完善的管理工具。坦白说,Portus的可视化界面还是很吸引人的。无奈,Harbor的使用者更多,为了更容易的解决使用过程中的问题,选用Harbor管理私有镜像。
一、软硬件要求
安装harbor之前要完成docker、docker-compose、Python的安装。以下是软硬件的要求。
image.png
如果存储过小,在下载harbor相关镜像的时候会提示空间不足。
1、 Docker安装
教程参考:XX待填坑
2、docker-compose安装
#下载docker-compose
$ curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
#赋权
$ sudo chmod +x /usr/local/bin/docker-compose
# 测试安装是否完成
$ docker-compose --version
docker-compose version 1.21.2, build a133471
3、linux系统已经安装了Python
$ python
Python 2.7.5 (default, Apr 11 2018, 07:36:10)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
4、Linux已经安装了openssl
openssl version -a
OpenSSL 1.0.2k-fips 26 Jan 2017
built on: reproducible build, date unspecified
platform: linux-x86_64
options: bn(64,64) md2(int) rc4(16x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)
compiler: gcc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DKRB5_MIT -m64 -DL_ENDIAN -Wall -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wa,--noexecstack -DPURIFY -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM
OPENSSLDIR: "/etc/pki/tls"
engines: dynamic
二、安装Harbor
Harbor安装教程参考https://github.com/vmware/harbor/blob/master/docs/installation_guide.md。一共有三种安装方式:1.docker镜像;2.离线;3.OVA方式安装
1、下载Harbor
https://github.com/vmware/harbor/releases
下载了offline离线版本(github是不是被限流了,下载速度非常非常慢,不建议在线安装)
2、解压
#解压tgz文件
$ tar zxvf harbor-offline-installer-v1.5.2.tgz
#解压后文件目录如下:
$ ll -a
total 1086452
drwxr-xr-x 4 root root 256 Jul 26 09:23 .
drwxr-xr-x. 9 root root 277 Jul 26 09:17 ..
drwxr-xr-x 3 root root 23 Jul 26 09:17 common
-rw-r--r-- 1 root root 1185 Jul 18 17:19 docker-compose.clair.yml
-rw-r--r-- 1 root root 1725 Jul 18 17:19 docker-compose.notary.yml
-rw-r--r-- 1 root root 3596 Jul 18 17:19 docker-compose.yml
drwxr-xr-x 3 root root 156 Jul 18 17:19 ha
-rw-r--r-- 1 root root 6953 Jul 26 09:23 harbor.cfg
-rw-r--r-- 1 root root 1111416970 Jul 18 17:22 harbor.v1.5.2.tar.gz
-rwxr-xr-x 1 root root 5773 Jul 18 17:19 install.sh
-rw-r--r-- 1 root root 10771 Jul 18 17:19 LICENSE
-rw-r--r-- 1 root root 482 Jul 18 17:19 NOTICE
-rw-r--r-- 1 root root 1030132 Jul 18 17:19 open_source_license
-rwxr-xr-x 1 root root 27840 Jul 18 17:19 prepare
3、修改harbor.cfg文件
文件中的参数参考https://github.com/vmware/harbor/blob/master/docs/installation_guide.md中的Configuring Harbor。
4、执行安装脚本$ ./install.sh
image.pngimage.png
5、查看安装的镜像
$ docker-compose ps
Name Command State Ports
-------------------------------------------------------------------------------------------------------------------------------------
harbor-adminserver /harbor/start.sh Up (healthy)
harbor-db /usr/local/bin/docker-entr ... Up (healthy) 3306/tcp
harbor-jobservice /harbor/start.sh Up
harbor-log /bin/sh -c /usr/local/bin/ ... Up (healthy) 127.0.0.1:1514->10514/tcp
harbor-ui /harbor/start.sh Up (healthy)
nginx nginx -g daemon off; Up (healthy) 0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp, 0.0.0.0:80->80/tcp
redis docker-entrypoint.sh redis ... Up 6379/tcp
registry /entrypoint.sh serve /etc/ ... Up (healthy) 5000/tcp
6、输入Ip地址访问Harbor
image.png登录,默认的用户名 密码admin/Harbor12345 。登录后可以修改管理员的密码。
三、附harbor常见操作
#停harbor
$sudo docker-compose stop
#启harbor
$sudo docker-compose start
修改harbor配置
#修改harbor配置
$ sudo docker-compose down -v
$ vim harbor.cfg
$ sudo prepare
$ sudo docker-compose up -d
默认的log存在/var/log/harbor/
网友评论