容器技术越来越或火,越成熟,容器应用的开发和运行始终离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境的Registry也是非常必要的。 所以Harbor孕育而生,Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。

1、基础环境安装(docker)

yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

yum install -y yum-utils device-mapper-persistent-data lvm2

配置yum源

将docker的源配置成阿里的

https://www.jianshu.com/p/3d3529c56875

yum repolist    #刷新yum源

安装docker-ce与docker-compose

yum install docker-ce -y    #默认安装最新版本的docker-ce,需要使用指定版本可以使用yum install docker-ce -版本号安装

yum install docker-compose -y    #安装docker-compose

启动docker

systemctl start docker #启动docker服务

systemctl enable docker #设置docker服务开机启动

2、Harbor安装

Harbor支持在线和离线安装方式,这里,建议使用离线方式,先下载Harbor安装包:https://github.com/goharbor/harbor/releases

我下载的是v2.1.3版本的

wget https://github.com/goharbor/harbor/releases/download/v2.1.3/harbor-offline-installer-v2.1.3.tgz

解压离线安装包

tar -zxvf harbor-offline-installer-v2.1.3.tgz -C  /usr/local/      #使用tar命令解压到/usr/local/目录下

配置harbor

cd /usr/local/harbor/    #进入到harbor目录

cp   harbor.yml.tmpl    harbor.yml

vim harbor.yml   #编辑harbor的配置文件

#修改以下内容

hostname = 192.168.100.204 #修改harbor的启动ip,这里需要依据系统ip设置

port: 80 #harbor的端口,有两个端口,http协议(80)和https协议(443)

harbor_admin_password = harbor12345   #修改harbor的admin用户的密码

data_volume: /harbor/data #修改harbor存储位置

安装harbor

./prepare #配置Harbor

dockker安装harbor docker harbor安装与配置_配置文件

这个错误是因为harbor.yml中默认是配置https的端口及证书路径的。

解决办法:将下面的部分注释掉,保存后重新./prepare

# https related config

# https:

  # # https port for harbor, default is 443

  # port: 443

  # # The path of cert and key files for nginx

  # certificate: /your/certificate/path

  # private_key: /your/private/key/path

dockker安装harbor docker harbor安装与配置_docker_02

./install.sh #安装Harbor

dockker安装harbor docker harbor安装与配置_运维_03

开始下载数据

看到这个图就说明成功了

访问harbor和登录

(根据在harbor.yml文件中配置的端口与IP地址(或域名)进行访问)

dockker安装harbor docker harbor安装与配置_dockker安装harbor_04

3、修改docker配置文件,使docker支持harbor

编辑客户机/etc/docker/daemon.json文件

{"insecure-registries":["192.168.100.204:80"]}

重启客户机docker服务

systemctl restart docker   #或者(service docker restart) 

4、设置Harbor开机启动

使用vim编辑器编辑配置文件vim /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

#需要注意harbor的安装位置

ExecStart=/usr/bin/docker-compose -f  /usr/local/harbor/docker-compose.yml up

ExecStop=/usr/bin/docker-compose -f /usr/local/harbor/docker-compose.yml down

[Install]

WantedBy=multi-user.target

systemctl enable harbor #设置harbor开机自启

systemctl start harbor #启动harbor