Harbor是Docker Images Registry Service系統,用於管理容器鏡像,由VMVare中國團隊開發。mysql
Harbor的部署有幾種方式:git
Kubernetes集羣建議使用1.10.x版本,Helm是在Kubernetes上的應用軟件包管理工具。具體方法參見:github
git clone https://github.com/vmware/harbor cd harbor/contrib/helm/harbor
harbor的helm部署依賴helm部署的postgresql,在官方的安裝文檔沒有明確說明,直接按照官方文檔說明安裝,就會缺失postgresql的部署,致使整個服務沒法啓動。sql
helm dependency update
官方提供了兩種方式,Insecure和Secure,我這裏選用的是Secure安全的部署方式,讓harbor本身生成CA和SSL,簡單方便。api
helm install . --debug --name hub --set externalDomain=harbor.my.domain
externalDomain爲外部能訪問到harbor的域名,到目前爲止,你能夠在本地/etc/hosts中添加域名解析,從本地訪問進行測試,待測試完成後再加入traefik-ingress中,固然你也能夠直接在traefik-ingress中添加域名解析。安全
編寫traefik配置文件(traefik-harbor.yaml)架構
apiVersion: extensions/v1beta1 kind: Ingress metadata: name: traefik-default-ingress namespace: default annotations: kubernetes.io/ingress.class: "traefik" spec: rules: <ul><li>host: harbor.my.domain http: paths: <ul><li>path: / backend: serviceName: my-release-harbor-ui servicePort: 80
kubectl create -f traefik-harbor.yml
參考:dom
注意:機器學習