Browse Source

Primer commit

Celestino Rey 10 tháng trước cách đây
commit
33c48b07c0
3 tập tin đã thay đổi với 116 bổ sung0 xóa
  1. 90 0
      docker-registry.yaml
  2. 17 0
      ingress.yaml
  3. 9 0
      registries.yaml

+ 90 - 0
docker-registry.yaml

@@ -0,0 +1,90 @@
+# Local Docker registry running in Kubernetes - for k3s
+#
+# kubectl create namespace docker-registry
+# kubectl apply -f docker-registry.yaml -n docker-registry
+#
+# docker build -t registry.localhost/test:latest .
+# docker push registry.localhost/test:latest
+---
+#apiVersion: networking.k8s.io/v1
+#kind: Ingress
+#metadata:
+#  name: docker-registry-ingress
+#spec:
+#  ingressClassName: traefik
+#  rules:
+#  - host: registry.localhost
+#    http:
+#      paths:
+#      - path: /
+#        pathType: Prefix
+#        backend:
+#          service:
+#            name: docker-registry-service
+#            port:
+#              number: 5000
+
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: docker-registry-service
+  labels:
+    app: docker-registry
+spec:
+  selector:
+    app: docker-registry
+  ports:
+    - protocol: TCP
+      port: 5000
+
+---
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: docker-registry-pvc
+  labels:
+    app: docker-registry
+spec:
+  accessModes:
+    - ReadWriteOnce
+  storageClassName: local-path
+  resources:
+    requests:
+      storage: 10Gi
+
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: docker-registry
+  labels:
+    app: docker-registry
+spec:
+  replicas: 1
+  selector:
+    matchLabels:
+      app: docker-registry
+  template:
+    metadata:
+      labels:
+        app: docker-registry
+    spec:
+      containers:
+      - name: docker-registry
+        image: registry
+        ports:
+        - containerPort: 5000
+          protocol: TCP
+        volumeMounts:
+        - name: storage
+          mountPath: /var/lib/registry
+        env:
+        - name: REGISTRY_HTTP_ADDR
+          value: :5000
+        - name: REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY
+          value: /var/lib/registry
+      volumes:
+      - name: storage
+        persistentVolumeClaim:
+          claimName: docker-registry-pvc

+ 17 - 0
ingress.yaml

@@ -0,0 +1,17 @@
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+  name: docker-registry-ingress
+spec:
+  ingressClassName: nginx
+  rules:
+  - host: registry.rancher.lab
+    http:
+      paths:
+      - path: /
+        pathType: Prefix
+        backend:
+          service:
+            name: docker-registry-service
+            port:
+              number: 5000

+ 9 - 0
registries.yaml

@@ -0,0 +1,9 @@
+# /etc/rancher/k3s/registries.yaml
+#
+# No need for TLS/HTTPS for the local registry
+# https://docs.k3s.io/installation/private-registry
+#
+mirrors:
+  registry.localhost:
+    endpoint:
+      - "http://registry.localhost:80"