diff --git a/readme.md b/readme.md index 3d458174cf0fb633de2c4c6c664bea65f733e662..0a9fb4b95a1e4aacbeb9f19d0b783021cef04468 100644 --- a/readme.md +++ b/readme.md @@ -51,11 +51,41 @@ docker tag redis:4.0.1-alpine registry-vpc.cn-qingdao.aliyuncs.com/wod/redis:4. docker push registry-vpc.cn-qingdao.aliyuncs.com/wod/redis:4.0.1-alpine ``` +## setup +```bash +# 1.install + +# label node +kubectl label node harbor-registry=enabled + +helm install \ +/etc/kubernetes/helm/harbor \ +--name=harbor \ +--namespace=devops \ +-f /etc/kubernetes/helm/harbor/values-overrides.yaml + +# uninstall +helm delete harbor --purge + +# update +helm upgrade harbor /etc/kubernetes/helm/harbor \ +-f /etc/kubernetes/helm/harbor/values-overrides.yaml + +# template +helm template \ +/etc/kubernetes/helm/harbor \ +--name=harbor \ +--namespace=devops \ +-f /etc/kubernetes/helm/harbor/values-overrides.yaml \ +> /etc/kubernetes/helm/harbor/dist.yaml +``` + ## overrides ```bash cat /etc/kubernetes/helm/harbor/values-overrides.yaml ``` +### 有持久化存储StorageOS ```yaml persistence: enabled: true @@ -163,31 +193,97 @@ notary: tag: dev ``` -## setup -```bash -# 1.install +### 使用HostPath存储数据 +在此之前规划一下哪台服务器存储什么内容 +``` +harbor-adminserver: enabled +harbor-database: enabled +harbor-registry: enabled -# label node -kubectl label node harbor-registry=enabled +kubectl label node harbor-adminserver=enabled +``` -helm install \ -/etc/kubernetes/helm/harbor \ ---name=harbor \ ---namespace=devops \ --f /etc/kubernetes/helm/harbor/values-overrides.yaml -# uninstall -helm delete harbor --purge +```yaml +persistence: + enabled: false +externalProtocol: https +externalDomain: harbor.local +harborAdminPassword: "passwd" -# update -helm upgrade harbor /etc/kubernetes/helm/harbor \ --f /etc/kubernetes/helm/harbor/values-overrides.yaml +ingress: + enabled: true -# template -helm template \ -/etc/kubernetes/helm/harbor \ ---name=harbor \ ---namespace=devops \ --f /etc/kubernetes/helm/harbor/values-overrides.yaml \ -> /etc/kubernetes/helm/harbor/dist.yaml +adminserver: + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/harbor-adminserver + tag: v1.6.0 + nodeSelector: + harbor-adminserver: enabled + +jobservice: + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/harbor-jobservice + tag: v1.6.0 + +ui: + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/harbor-ui + tag: v1.6.0 + +busybox: + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/busybox + tag: 1.29 + +database: + internal: + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/harbor-db + tag: v1.6.0 + password: "spaceIN511" + nodeSelector: + harbor-database: enabled + +registry: + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/registry + tag: 2.6.2 + hostpath: /etc/kubernetes/data/registry + nodeSelector: + harbor-registry: enabled + +chartmuseum: + enabled: true + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/chartmuseum + tag: v0.7.1 + +clair: + enabled: true + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/clair + tag: v2.0.6 + +redis: + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/redis + tag: 4.0.1-alpine + usePassword: false + cluster: + enabled: false + master: + persistence: + enabled: false + +notary: + enabled: true + server: + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/notary-server-photon + tag: dev + signer: + image: + repository: registry.cn-qingdao.aliyuncs.com/wod/notary-signer-photon + tag: dev ``` \ No newline at end of file diff --git a/templates/adminserver/adminserver-ss.yaml b/templates/adminserver/adminserver-ss.yaml index 878ab54bae2336e31a8f57663e9f49b1377e482f..a07eb6e014b3a14e1f2617e061f6e959ebd961a0 100644 --- a/templates/adminserver/adminserver-ss.yaml +++ b/templates/adminserver/adminserver-ss.yaml @@ -49,7 +49,8 @@ spec: volumes: {{- if not .Values.persistence.enabled }} - name: data - emptyDir: {} + hostPath: + path: /data/{{ .Release.Namespace }}/{{ .Release.Name }}/adminserver {{- end }} - name: adminserver-key secret: diff --git a/templates/database/database-ss.yaml b/templates/database/database-ss.yaml index b71855789b135cbf4e2683094a372c521b60002e..65742d6d1822a2ddcc1a134686588bc00e135186 100644 --- a/templates/database/database-ss.yaml +++ b/templates/database/database-ss.yaml @@ -42,8 +42,9 @@ spec: mountPath: /var/lib/postgresql/data {{- if not .Values.persistence.enabled }} volumes: - - name: "data" - emptyDir: {} + - name: data + hostPath: + path: /data/{{ .Release.Namespace }}/{{ .Release.Name }}/database {{- end -}} {{- with .Values.database.internal.nodeSelector }} nodeSelector: diff --git a/templates/registry/registry-ss.yaml b/templates/registry/registry-ss.yaml index acb38d34753680896a300f02e2496b3901f641a1..fa8d5d7d9cc202ae768615f966b80a793ac7896f 100644 --- a/templates/registry/registry-ss.yaml +++ b/templates/registry/registry-ss.yaml @@ -106,7 +106,7 @@ spec: name: "{{ template "harbor.fullname" . }}-registry" - name: registry-data hostPath: - path: /etc/kubernetes/data/registry + path: {{ .Values.registry.hostpath }} {{- with .Values.registry.nodeSelector }} nodeSelector: {{ toYaml . | indent 8 }} diff --git a/values.yaml b/values.yaml index 0f0d81b2891a50b69bf82f4bd8db3529aebfd59d..1d5d142d9aab11222c898c73131cda8c96ee0141 100644 --- a/values.yaml +++ b/values.yaml @@ -142,6 +142,7 @@ registry: pullPolicy: IfNotPresent httpSecret: "BBRQwySksiHZqJUh" logLevel: info + hostpath: /etc/kubernetes/data/registry storage: # specify the type of storage: "filesystem", "azure", "gcs", "s3", "swift", # "oss" and fill the information needed in the corresponding section @@ -214,8 +215,8 @@ registry: # requests: # memory: 256Mi # cpu: 100m - nodeSelector: - kubernetes.io/hostname: 172.31.14.41 + # nodeSelector: + # kubernetes.io/hostname: 172.31.14.41 tolerations: [] affinity: {}