一、安装底层需求

  • Python应该是2.7或更高版本
  • Docker引擎应为1.10或更高版本
  • Docker Compose需要为1.6.0或更高版本

二、安装

Harbor官方地址:https://github.com/goharbor/harbor/releases

  • 下载
  1. wget https://github.com/goharbor/harbor/releases/download/v1.10.0-rc1/harbor-offline-installer-v1.10.0-rc1.tgz
  • 解压
  1. tar -zxvf harbor-offline-installer-v1.10.0-rc1.tgz

增加 https 安全域名地址(/etc/docker/daemon.json)

  1. {
  2. "registry-mirrors": [
  3. "http://hub-mirror.c.163.com",
  4. "https://cafc18df.mirror.aliyuncs.com"
  5. ],
  6. "insecure-registries": [
  7. "https://hub.yangguoxiang.com"
  8. ]
  9. }

伪造证书,创建openssl 证书

  1. ##在存放证书的文件夹下操作
  2. openssl genrsa -out ca.key 4096
  3. openssl req -x509 -new -nodes -sha512 -days 3650 \
  4. -subj "/C=CN/ST=Shaanxi/L=Xian/O=ShaanxiWuliu/OU=Develper/CN=hub.yangguoxiang.com" \
  5. -key ca.key \
  6. -out ca.crt
  7. openssl genrsa -out hub.yangguoxiang.com.key 4096
  8. openssl req -sha512 -new \
  9. -subj "/C=CN/ST=Shaanxi/L=Xian/O=ShaanxiWuliu/OU=Develper/CN=hub.yangguoxiang.com" \
  10. -key hub.yangguoxiang.com.key \
  11. -out hub.yangguoxiang.com.csr
  12. cat > v3.ext <<-EOF
  13. authorityKeyIdentifier=keyid,issuer
  14. basicConstraints=CA:FALSE
  15. keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
  16. extendedKeyUsage = serverAuth
  17. subjectAltName = @alt_names
  18. [alt_names]
  19. DNS.1=hub.yangguoxiang.com
  20. DNS.2=hub.yangguoxiang
  21. EOF
  22. openssl x509 -req -sha512 -days 3650 \
  23. -extfile v3.ext \
  24. -CA ca.crt -CAkey ca.key -CAcreateserial \
  25. -in hub.yangguoxiang.com.csr \
  26. -out hub.yangguoxiang.com.crt
  27. cp hub.yangguoxiang.com.crt /data/cert/
  28. cp hub.yangguoxiang.com.key /data/cert/
  29. ##/data/cert为存放证书的例子,可以建在不同地方
  30. openssl x509 -inform PEM -in hub.yangguoxiang.com.crt -out hub.yangguoxiang.com.cert
  31. cp hub.yangguoxiang.com.cert /etc/docker/certs.d/hub.yangguoxiang.com/
  32. cp hub.yangguoxiang.com.key /etc/docker/certs.d/hub.yangguoxiang.com/
  33. cp ca.crt /etc/docker/certs.d/hub.yangguoxiang.com/
  34. ##需提前建好文件夹/etc/docker/certs.d/yourdomain.com
  • 修改配置文件 (harbor.yml)
  1. # 修改为访问域名
  2. hostname: hub.yangguoxiang.com
  3. # 证书位置
  4. https:
  5. port: 443
  6. certificate: /data/cert/hub.yangguoxiang.com.crt
  7. private_key: /data/cert/hub.yangguoxiang.com.key
  8. # Web 登录密码
  9. harbor_admin_password: 123456
  • 安装
  1. ./install.sh

安装成功提示

image.png

三、访问

  • 地址

https://hub.yangguoxiang.com/
登录账号:admin
登录密码:123456

  • docker 客户端访问

在其它 docker 客户端上访问 Harbor 私仓

  1. echo "192.168.5.89 hub.yangguoxiang.com" >> /etc/hosts
  2. docker login hub.yangguoxiang.com
  3. Username: admin
  4. Password: 123456

image.png

四、操作

测试可以创建一个自定义镜像 Docker 构建镜像:https://www.yuque.com/u455332/qzqm6e/odgn4b

  • 推送

    1. docker tag myapp:v1.0 hub.yangguoxiang.com/library/myapp:v1.0
    2. docker push hub.yangguoxiang.com/library/myapp:v1.0
  • 拉取

  1. docker pull hub.yangguoxiang.com/library/myapp:v1.0