本次实验主机说明

    注意: harbor只需要安装到 5.141 服务器上

    1. # 下载harbor安装包到 /opt/src 目录下
    2. src]# cd /opt/src
    3. # 如果需要安装其他版本的harbor,可以自己到github上找到相应版本的下载链接地址,替换wget 后面的Url即可
    4. src]# wget https://github.com/goharbor/harbor/releases/download/v2.1.2/harbor-offline-installer-v2.1.2.tgz
    5. src]# tar xf harbor-offline-installer-v2.1.2.tgz -C /opt
    6. # 解压完之后可以看到 /opt 目录已经自动生成了harbor目录
    7. # 为了以后升级方便,需要把目录重命名为 harbor-v2.1.2 , 再创建一个 /opt/harbor 的软连接到 /opt/harbor-v2.1.2,以后升级了只需要替换版本目录再重新建立软连接就行
    8. # 修改配置项,如果在生产环境,请务必要修改密码
    9. src]# vim /opt/harbor/harbor.yml
    10. # 将一下配置项的内容修改并保存
    11. hostname: harbor.od.com
    12. http:
    13. port: 180
    14. data_volume: /data/harbor
    15. location: /data/harbor/logs
    16. # 安装docker-compose
    17. src]# yum install -y docker-compose
    18. harbor]# ./install.sh
    19. # 若出现以下提示,则表示harbor安装成功
    20. ......
    21. ----Harbor has been installed and started successfully.----
    22. #查看docker当前运行的镜像
    23. harbor]# docker-compose ps

    . 设置harbor 开机启动

    1. harbor]# vim /etc/rc.d/rc.local # 增加以下内容
    2. # start harbor
    3. cd /opt/harbor
    4. /usr/docker-compose stop
    5. /usr/docker-compose start

    . 安装Nginx

    1. # 当前机器中Nginx功能较少,使用yum安装即可。如有多个harbor考虑源码编译且配置健康检查
    2. # nginx配置此处忽略,仅仅使用最简单的配置。
    3. harbor]# vim /etc/nginx/conf.d/harbor.conf
    4. harbor]# cat /etc/nginx/conf.d/harbor.conf
    5. server {
    6. listen 80;
    7. server_name harbor.od.com;
    8. # 避免出现上传失败的情况
    9. client_max_body_size 1000m;
    10. location / {
    11. proxy_pass http://127.0.0.1:180;
    12. }
    13. }
    14. harbor]# systemctl start nginx ; systemctl enable nginx

    配置DNS(在5.140主机上操作)

    1. ~]# vim /var/named/od.com.zone # 序列号需要滚动一个
    2. $ORIGIN od.com.
    3. $TTL 600 ; 10 minutes
    4. @ IN SOA dns.od.com. dnsadmin.od.com. (
    5. 2020010502 ; serial
    6. 10800 ; refresh (3 hours)
    7. 900 ; retry (15 minutes)
    8. 604800 ; expire (1 week)
    9. 86400 ; minimum (1 day)
    10. )
    11. NS dns.od.com.
    12. $TTL 60 ; 1 minute
    13. dns A 192.168.5.140
    14. harbor A 192.168.5.141
    15. ~]# systemctl restart named.service # reload 无法使得配置生效
    16. ~]# host harbor.od.com
    17. harbor.od.com has address 10.4.7.200

    完成以上配置之后,就可以通过harbor.od.com 访问镜像仓库啦

    . 测试harbor

    1. ~]# docker pull nginx:1.7.9
    2. ~]# docker tag nginx:1.7.9 harbor.od.com/public/nginx:v1.7.9
    3. ~]# docker login -u admin harbor.od.com
    4. ~]# docker push harbor.od.com/public/nginx:v1.7.9
    5. ~]# docker logout