From 393eff350453892b692ddb1b8633177cdd2a282c Mon Sep 17 00:00:00 2001 From: bboysoul Date: Fri, 14 Jun 2024 10:32:50 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E6=B7=BB=E5=8A=A0k8s=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E7=9A=84=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../docker-compose.yaml | 0 {dockerhub => docker/dockerhub}/config.yml | 0 .../dockerhub}/docker-compose.yaml | 0 {gcr => docker/gcr}/config.yml | 0 {gcr => docker/gcr}/docker-compose.yaml | 0 {ghcr => docker/ghcr}/config.yml | 0 {ghcr => docker/ghcr}/docker-compose.yaml | 0 {k8sgcr => docker/k8sgcr}/config.yml | 0 {k8sgcr => docker/k8sgcr}/docker-compose.yaml | 0 {quay => docker/quay}/config.yml | 0 {quay => docker/quay}/docker-compose.yaml | 0 .../registryk8s}/config.yml | 0 .../registryk8s}/docker-compose.yaml | 0 kubernetes/dockerhub/config.yml | 16 ++++ kubernetes/dockerhub/kustomization.yaml | 10 +++ kubernetes/dockerhub/sts.yaml | 46 ++++++++++++ kubernetes/dockerhub/svc.yaml | 11 +++ kubernetes/gcr/config.yml | 16 ++++ kubernetes/gcr/kustomization.yaml | 10 +++ kubernetes/gcr/sts.yaml | 46 ++++++++++++ kubernetes/gcr/svc.yaml | 11 +++ kubernetes/ghcr/config.yml | 16 ++++ kubernetes/ghcr/kustomization.yaml | 10 +++ kubernetes/ghcr/sts.yaml | 46 ++++++++++++ kubernetes/ghcr/svc.yaml | 11 +++ kubernetes/ingress.yaml | 75 +++++++++++++++++++ kubernetes/k8sgcr/config.yml | 16 ++++ kubernetes/k8sgcr/kustomization.yaml | 10 +++ kubernetes/k8sgcr/sts.yaml | 46 ++++++++++++ kubernetes/k8sgcr/svc.yaml | 11 +++ kubernetes/kustomization.yaml | 14 ++++ kubernetes/quay/config.yml | 16 ++++ kubernetes/quay/kustomization.yaml | 10 +++ kubernetes/quay/sts.yaml | 46 ++++++++++++ kubernetes/quay/svc.yaml | 11 +++ kubernetes/registryk8s/config.yml | 16 ++++ kubernetes/registryk8s/kustomization.yaml | 10 +++ kubernetes/registryk8s/sts.yaml | 46 ++++++++++++ kubernetes/registryk8s/svc.yaml | 11 +++ readme.md | 8 +- 40 files changed, 594 insertions(+), 1 deletion(-) rename docker-compose.yaml => docker/docker-compose.yaml (100%) rename {dockerhub => docker/dockerhub}/config.yml (100%) rename {dockerhub => docker/dockerhub}/docker-compose.yaml (100%) rename {gcr => docker/gcr}/config.yml (100%) rename {gcr => docker/gcr}/docker-compose.yaml (100%) rename {ghcr => docker/ghcr}/config.yml (100%) rename {ghcr => docker/ghcr}/docker-compose.yaml (100%) rename {k8sgcr => docker/k8sgcr}/config.yml (100%) rename {k8sgcr => docker/k8sgcr}/docker-compose.yaml (100%) rename {quay => docker/quay}/config.yml (100%) rename {quay => docker/quay}/docker-compose.yaml (100%) rename {registryk8s => docker/registryk8s}/config.yml (100%) rename {registryk8s => docker/registryk8s}/docker-compose.yaml (100%) create mode 100755 kubernetes/dockerhub/config.yml create mode 100755 kubernetes/dockerhub/kustomization.yaml create mode 100755 kubernetes/dockerhub/sts.yaml create mode 100755 kubernetes/dockerhub/svc.yaml create mode 100755 kubernetes/gcr/config.yml create mode 100755 kubernetes/gcr/kustomization.yaml create mode 100755 kubernetes/gcr/sts.yaml create mode 100755 kubernetes/gcr/svc.yaml create mode 100755 kubernetes/ghcr/config.yml create mode 100755 kubernetes/ghcr/kustomization.yaml create mode 100755 kubernetes/ghcr/sts.yaml create mode 100755 kubernetes/ghcr/svc.yaml create mode 100755 kubernetes/ingress.yaml create mode 100755 kubernetes/k8sgcr/config.yml create mode 100755 kubernetes/k8sgcr/kustomization.yaml create mode 100755 kubernetes/k8sgcr/sts.yaml create mode 100755 kubernetes/k8sgcr/svc.yaml create mode 100755 kubernetes/kustomization.yaml create mode 100755 kubernetes/quay/config.yml create mode 100755 kubernetes/quay/kustomization.yaml create mode 100755 kubernetes/quay/sts.yaml create mode 100755 kubernetes/quay/svc.yaml create mode 100755 kubernetes/registryk8s/config.yml create mode 100755 kubernetes/registryk8s/kustomization.yaml create mode 100755 kubernetes/registryk8s/sts.yaml create mode 100755 kubernetes/registryk8s/svc.yaml diff --git a/docker-compose.yaml b/docker/docker-compose.yaml similarity index 100% rename from docker-compose.yaml rename to docker/docker-compose.yaml diff --git a/dockerhub/config.yml b/docker/dockerhub/config.yml similarity index 100% rename from dockerhub/config.yml rename to docker/dockerhub/config.yml diff --git a/dockerhub/docker-compose.yaml b/docker/dockerhub/docker-compose.yaml similarity index 100% rename from dockerhub/docker-compose.yaml rename to docker/dockerhub/docker-compose.yaml diff --git a/gcr/config.yml b/docker/gcr/config.yml similarity index 100% rename from gcr/config.yml rename to docker/gcr/config.yml diff --git a/gcr/docker-compose.yaml b/docker/gcr/docker-compose.yaml similarity index 100% rename from gcr/docker-compose.yaml rename to docker/gcr/docker-compose.yaml diff --git a/ghcr/config.yml b/docker/ghcr/config.yml similarity index 100% rename from ghcr/config.yml rename to docker/ghcr/config.yml diff --git a/ghcr/docker-compose.yaml b/docker/ghcr/docker-compose.yaml similarity index 100% rename from ghcr/docker-compose.yaml rename to docker/ghcr/docker-compose.yaml diff --git a/k8sgcr/config.yml b/docker/k8sgcr/config.yml similarity index 100% rename from k8sgcr/config.yml rename to docker/k8sgcr/config.yml diff --git a/k8sgcr/docker-compose.yaml b/docker/k8sgcr/docker-compose.yaml similarity index 100% rename from k8sgcr/docker-compose.yaml rename to docker/k8sgcr/docker-compose.yaml diff --git a/quay/config.yml b/docker/quay/config.yml similarity index 100% rename from quay/config.yml rename to docker/quay/config.yml diff --git a/quay/docker-compose.yaml b/docker/quay/docker-compose.yaml similarity index 100% rename from quay/docker-compose.yaml rename to docker/quay/docker-compose.yaml diff --git a/registryk8s/config.yml b/docker/registryk8s/config.yml similarity index 100% rename from registryk8s/config.yml rename to docker/registryk8s/config.yml diff --git a/registryk8s/docker-compose.yaml b/docker/registryk8s/docker-compose.yaml similarity index 100% rename from registryk8s/docker-compose.yaml rename to docker/registryk8s/docker-compose.yaml diff --git a/kubernetes/dockerhub/config.yml b/kubernetes/dockerhub/config.yml new file mode 100755 index 0000000..1a41432 --- /dev/null +++ b/kubernetes/dockerhub/config.yml @@ -0,0 +1,16 @@ +version: 0.1 +storage: + filesystem: + rootdirectory: /var/lib/registry + delete: + enabled: true + maintenance: + uploadpurging: + enabled: true + age: 168h + dryrun: false + interval: 45m +http: + addr: 0.0.0.0:5000 +proxy: + remoteurl: https://registry-1.docker.io \ No newline at end of file diff --git a/kubernetes/dockerhub/kustomization.yaml b/kubernetes/dockerhub/kustomization.yaml new file mode 100755 index 0000000..825d7fa --- /dev/null +++ b/kubernetes/dockerhub/kustomization.yaml @@ -0,0 +1,10 @@ +resources: +- sts.yaml +- svc.yaml + +configMapGenerator: +- name: dockerhub-cnf + files: + - config.yml + options: + disableNameSuffixHash: true \ No newline at end of file diff --git a/kubernetes/dockerhub/sts.yaml b/kubernetes/dockerhub/sts.yaml new file mode 100755 index 0000000..1e679c0 --- /dev/null +++ b/kubernetes/dockerhub/sts.yaml @@ -0,0 +1,46 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: dockerhub + namespace: registry +spec: + selector: + matchLabels: + app: dockerhub + serviceName: dockerhub + replicas: 1 + template: + metadata: + labels: + app: dockerhub + spec: + containers: + - name: dockerhub + image: registry:2.8.1 + ports: + - containerPort: 5000 + name: dockerhub + volumeMounts: + - name: dockerhub-data + mountPath: /var/lib/registry + - name: timezone + mountPath: /etc/localtime + readOnly: true + - name: dockerhub-cnf + mountPath: /etc/docker/registry/config.yml + subPath: config.yml + volumes: + - name: dockerhub-cnf + configMap: + name: dockerhub-cnf + - name: timezone + hostPath: + path: /usr/share/zoneinfo/Asia/Shanghai + volumeClaimTemplates: + - metadata: + name: dockerhub-data + spec: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 50Gi diff --git a/kubernetes/dockerhub/svc.yaml b/kubernetes/dockerhub/svc.yaml new file mode 100755 index 0000000..01ea295 --- /dev/null +++ b/kubernetes/dockerhub/svc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: dockerhub + namespace: registry +spec: + selector: + app: dockerhub + ports: + - port: 5000 + targetPort: 5000 diff --git a/kubernetes/gcr/config.yml b/kubernetes/gcr/config.yml new file mode 100755 index 0000000..27d5aea --- /dev/null +++ b/kubernetes/gcr/config.yml @@ -0,0 +1,16 @@ +version: 0.1 +storage: + filesystem: + rootdirectory: /var/lib/registry + delete: + enabled: true + maintenance: + uploadpurging: + enabled: true + age: 168h + dryrun: false + interval: 1m +http: + addr: 0.0.0.0:5000 +proxy: + remoteurl: https://gcr.io \ No newline at end of file diff --git a/kubernetes/gcr/kustomization.yaml b/kubernetes/gcr/kustomization.yaml new file mode 100755 index 0000000..2b60c2d --- /dev/null +++ b/kubernetes/gcr/kustomization.yaml @@ -0,0 +1,10 @@ +resources: +- sts.yaml +- svc.yaml + +configMapGenerator: +- name: gcr-cnf + files: + - config.yml + options: + disableNameSuffixHash: true \ No newline at end of file diff --git a/kubernetes/gcr/sts.yaml b/kubernetes/gcr/sts.yaml new file mode 100755 index 0000000..06e5a1f --- /dev/null +++ b/kubernetes/gcr/sts.yaml @@ -0,0 +1,46 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: gcr + namespace: registry +spec: + selector: + matchLabels: + app: gcr + serviceName: gcr + replicas: 1 + template: + metadata: + labels: + app: gcr + spec: + containers: + - name: gcr + image: registry:2.8.1 + ports: + - containerPort: 5000 + name: gcr + volumeMounts: + - name: gcr-data + mountPath: /var/lib/registry + - name: timezone + mountPath: /etc/localtime + readOnly: true + - name: gcr-cnf + mountPath: /etc/docker/registry/config.yml + subPath: config.yml + volumes: + - name: gcr-cnf + configMap: + name: gcr-cnf + - name: timezone + hostPath: + path: /usr/share/zoneinfo/Asia/Shanghai + volumeClaimTemplates: + - metadata: + name: gcr-data + spec: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 50Gi diff --git a/kubernetes/gcr/svc.yaml b/kubernetes/gcr/svc.yaml new file mode 100755 index 0000000..edd006a --- /dev/null +++ b/kubernetes/gcr/svc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: gcr + namespace: registry +spec: + selector: + app: gcr + ports: + - port: 5000 + targetPort: 5000 diff --git a/kubernetes/ghcr/config.yml b/kubernetes/ghcr/config.yml new file mode 100755 index 0000000..118e497 --- /dev/null +++ b/kubernetes/ghcr/config.yml @@ -0,0 +1,16 @@ +version: 0.1 +storage: + filesystem: + rootdirectory: /var/lib/registry + delete: + enabled: true + maintenance: + uploadpurging: + enabled: true + age: 168h + dryrun: false + interval: 1m +http: + addr: 0.0.0.0:5000 +proxy: + remoteurl: https://ghcr.io \ No newline at end of file diff --git a/kubernetes/ghcr/kustomization.yaml b/kubernetes/ghcr/kustomization.yaml new file mode 100755 index 0000000..a34ad2a --- /dev/null +++ b/kubernetes/ghcr/kustomization.yaml @@ -0,0 +1,10 @@ +resources: +- sts.yaml +- svc.yaml + +configMapGenerator: +- name: ghcr-cnf + files: + - config.yml + options: + disableNameSuffixHash: true \ No newline at end of file diff --git a/kubernetes/ghcr/sts.yaml b/kubernetes/ghcr/sts.yaml new file mode 100755 index 0000000..b8f1fd7 --- /dev/null +++ b/kubernetes/ghcr/sts.yaml @@ -0,0 +1,46 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: ghcr + namespace: registry +spec: + selector: + matchLabels: + app: ghcr + serviceName: ghcr + replicas: 1 + template: + metadata: + labels: + app: ghcr + spec: + containers: + - name: ghcr + image: registry:2.8.1 + ports: + - containerPort: 5000 + name: ghcr + volumeMounts: + - name: ghcr-data + mountPath: /var/lib/registry + - name: timezone + mountPath: /etc/localtime + readOnly: true + - name: ghcr-cnf + mountPath: /etc/docker/registry/config.yml + subPath: config.yml + volumes: + - name: ghcr-cnf + configMap: + name: ghcr-cnf + - name: timezone + hostPath: + path: /usr/share/zoneinfo/Asia/Shanghai + volumeClaimTemplates: + - metadata: + name: ghcr-data + spec: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 50Gi diff --git a/kubernetes/ghcr/svc.yaml b/kubernetes/ghcr/svc.yaml new file mode 100755 index 0000000..ba1fcf9 --- /dev/null +++ b/kubernetes/ghcr/svc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: ghcr + namespace: registry +spec: + selector: + app: ghcr + ports: + - port: 5000 + targetPort: 5000 diff --git a/kubernetes/ingress.yaml b/kubernetes/ingress.yaml new file mode 100755 index 0000000..ab4b3e1 --- /dev/null +++ b/kubernetes/ingress.yaml @@ -0,0 +1,75 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: registry-ingress + namespace: registry + annotations: + kubernetes.io/ingress.class: "nginx" + nginx.ingress.kubernetes.io/ssl-passthrough: "true" + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" +spec: + rules: + - host: "quay.example.com" + http: + paths: + - pathType: Prefix + path: "/" + backend: + service: + name: quay + port: + number: 5000 + - host: "registryk8s.example.com" + http: + paths: + - pathType: Prefix + path: "/" + backend: + service: + name: registryk8s + port: + number: 5000 + - host: "gcr.example.com" + http: + paths: + - pathType: Prefix + path: "/" + backend: + service: + name: gcr + port: + number: 5000 + - host: "ghcr.example.com" + http: + paths: + - pathType: Prefix + path: "/" + backend: + service: + name: ghcr + port: + number: 5000 + - host: "k8sgcr.example.com" + http: + paths: + - pathType: Prefix + path: "/" + backend: + service: + name: k8sgcr + port: + number: 5000 + - host: "hub.example.com" + http: + paths: + - pathType: Prefix + path: "/" + backend: + service: + name: dockerhub + port: + number: 5000 + tls: + - hosts: + - example.com + secretName: example.com-tls diff --git a/kubernetes/k8sgcr/config.yml b/kubernetes/k8sgcr/config.yml new file mode 100755 index 0000000..23895f6 --- /dev/null +++ b/kubernetes/k8sgcr/config.yml @@ -0,0 +1,16 @@ +version: 0.1 +storage: + filesystem: + rootdirectory: /var/lib/registry + delete: + enabled: true + maintenance: + uploadpurging: + enabled: true + age: 168h + dryrun: false + interval: 1m +http: + addr: 0.0.0.0:5000 +proxy: + remoteurl: https://k8s.gcr.io \ No newline at end of file diff --git a/kubernetes/k8sgcr/kustomization.yaml b/kubernetes/k8sgcr/kustomization.yaml new file mode 100755 index 0000000..7a25885 --- /dev/null +++ b/kubernetes/k8sgcr/kustomization.yaml @@ -0,0 +1,10 @@ +resources: +- sts.yaml +- svc.yaml + +configMapGenerator: +- name: k8sgcr-cnf + files: + - config.yml + options: + disableNameSuffixHash: true \ No newline at end of file diff --git a/kubernetes/k8sgcr/sts.yaml b/kubernetes/k8sgcr/sts.yaml new file mode 100755 index 0000000..963a692 --- /dev/null +++ b/kubernetes/k8sgcr/sts.yaml @@ -0,0 +1,46 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: k8sgcr + namespace: registry +spec: + selector: + matchLabels: + app: k8sgcr + serviceName: k8sgcr + replicas: 1 + template: + metadata: + labels: + app: k8sgcr + spec: + containers: + - name: k8sgcr + image: registry:2.8.1 + ports: + - containerPort: 5000 + name: k8sgcr + volumeMounts: + - name: k8sgcr-data + mountPath: /var/lib/registry + - name: timezone + mountPath: /etc/localtime + readOnly: true + - name: k8sgcr-cnf + mountPath: /etc/docker/registry/config.yml + subPath: config.yml + volumes: + - name: k8sgcr-cnf + configMap: + name: k8sgcr-cnf + - name: timezone + hostPath: + path: /usr/share/zoneinfo/Asia/Shanghai + volumeClaimTemplates: + - metadata: + name: k8sgcr-data + spec: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 50Gi diff --git a/kubernetes/k8sgcr/svc.yaml b/kubernetes/k8sgcr/svc.yaml new file mode 100755 index 0000000..86ef14c --- /dev/null +++ b/kubernetes/k8sgcr/svc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: k8sgcr + namespace: registry +spec: + selector: + app: k8sgcr + ports: + - port: 5000 + targetPort: 5000 diff --git a/kubernetes/kustomization.yaml b/kubernetes/kustomization.yaml new file mode 100755 index 0000000..676eec4 --- /dev/null +++ b/kubernetes/kustomization.yaml @@ -0,0 +1,14 @@ +resources: +- registryk8s +- quay +- dockerhub +- gcr +- ghcr +- k8sgcr +- ingress.yaml + +namespace: registry + +images: +- name: registry + newTag: 2.8.3 diff --git a/kubernetes/quay/config.yml b/kubernetes/quay/config.yml new file mode 100755 index 0000000..4e5d241 --- /dev/null +++ b/kubernetes/quay/config.yml @@ -0,0 +1,16 @@ +version: 0.1 +storage: + filesystem: + rootdirectory: /var/lib/registry + delete: + enabled: true + maintenance: + uploadpurging: + enabled: true + age: 168h + dryrun: false + interval: 1m +http: + addr: 0.0.0.0:5000 +proxy: + remoteurl: https://quay.io \ No newline at end of file diff --git a/kubernetes/quay/kustomization.yaml b/kubernetes/quay/kustomization.yaml new file mode 100755 index 0000000..26f3851 --- /dev/null +++ b/kubernetes/quay/kustomization.yaml @@ -0,0 +1,10 @@ +resources: +- sts.yaml +- svc.yaml + +configMapGenerator: +- name: quay-cnf + files: + - config.yml + options: + disableNameSuffixHash: true \ No newline at end of file diff --git a/kubernetes/quay/sts.yaml b/kubernetes/quay/sts.yaml new file mode 100755 index 0000000..3985ca5 --- /dev/null +++ b/kubernetes/quay/sts.yaml @@ -0,0 +1,46 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: quay + namespace: registry +spec: + selector: + matchLabels: + app: quay + serviceName: quay + replicas: 1 + template: + metadata: + labels: + app: quay + spec: + containers: + - name: quay + image: registry:2.8.1 + ports: + - containerPort: 5000 + name: quay + volumeMounts: + - name: quay-data + mountPath: /var/lib/registry + - name: timezone + mountPath: /etc/localtime + readOnly: true + - name: quay-cnf + mountPath: /etc/docker/registry/config.yml + subPath: config.yml + volumes: + - name: quay-cnf + configMap: + name: quay-cnf + - name: timezone + hostPath: + path: /usr/share/zoneinfo/Asia/Shanghai + volumeClaimTemplates: + - metadata: + name: quay-data + spec: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 50Gi diff --git a/kubernetes/quay/svc.yaml b/kubernetes/quay/svc.yaml new file mode 100755 index 0000000..7cd6704 --- /dev/null +++ b/kubernetes/quay/svc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: quay + namespace: registry +spec: + selector: + app: quay + ports: + - port: 5000 + targetPort: 5000 diff --git a/kubernetes/registryk8s/config.yml b/kubernetes/registryk8s/config.yml new file mode 100755 index 0000000..63fe84d --- /dev/null +++ b/kubernetes/registryk8s/config.yml @@ -0,0 +1,16 @@ +version: 0.1 +storage: + filesystem: + rootdirectory: /var/lib/registry + delete: + enabled: true + maintenance: + uploadpurging: + enabled: true + age: 168h + dryrun: false + interval: 1m +http: + addr: 0.0.0.0:5000 +proxy: + remoteurl: https://registry.k8s.io \ No newline at end of file diff --git a/kubernetes/registryk8s/kustomization.yaml b/kubernetes/registryk8s/kustomization.yaml new file mode 100755 index 0000000..1d842d3 --- /dev/null +++ b/kubernetes/registryk8s/kustomization.yaml @@ -0,0 +1,10 @@ +resources: +- sts.yaml +- svc.yaml + +configMapGenerator: +- name: registryk8s-cnf + files: + - config.yml + options: + disableNameSuffixHash: true \ No newline at end of file diff --git a/kubernetes/registryk8s/sts.yaml b/kubernetes/registryk8s/sts.yaml new file mode 100755 index 0000000..3257c47 --- /dev/null +++ b/kubernetes/registryk8s/sts.yaml @@ -0,0 +1,46 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: registryk8s + namespace: registry +spec: + selector: + matchLabels: + app: registryk8s + serviceName: registryk8s + replicas: 1 + template: + metadata: + labels: + app: registryk8s + spec: + containers: + - name: registryk8s + image: registry:2.8.1 + ports: + - containerPort: 5000 + name: registryk8s + volumeMounts: + - name: registryk8s-data + mountPath: /var/lib/registry + - name: timezone + mountPath: /etc/localtime + readOnly: true + - name: registryk8s-cnf + mountPath: /etc/docker/registry/config.yml + subPath: config.yml + volumes: + - name: registryk8s-cnf + configMap: + name: registryk8s-cnf + - name: timezone + hostPath: + path: /usr/share/zoneinfo/Asia/Shanghai + volumeClaimTemplates: + - metadata: + name: registryk8s-data + spec: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 50Gi diff --git a/kubernetes/registryk8s/svc.yaml b/kubernetes/registryk8s/svc.yaml new file mode 100755 index 0000000..eca2fe4 --- /dev/null +++ b/kubernetes/registryk8s/svc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: registryk8s + namespace: registry +spec: + selector: + app: registryk8s + ports: + - port: 5000 + targetPort: 5000 diff --git a/readme.md b/readme.md index 1820f59..78ce7ce 100644 --- a/readme.md +++ b/readme.md @@ -2,7 +2,9 @@ 这是为了方便大家做各个镜像仓库代理的 -### 操作 +### Docker教程 + +进入docker目录 如果你想要启动所有的镜像仓库直接执行 @@ -18,6 +20,10 @@ 每一个镜像仓库对外的端口都是不一样的,当然你也可以使用nginx统一反向代理一下 +### k8s教程 + +都在用k8s了,还想要教程? + ### 注意 大家可以看下配置文件