registry.yaml 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. # 私有Docker Registry - K3s 部署清单
  2. # 等价转换原 docker-compose.yml 所有配置
  3. apiVersion: v1
  4. kind: Secret
  5. metadata:
  6. name: registry-auth
  7. namespace: default
  8. type: Opaque
  9. # 注意:这里仅为占位,实际需要用 htpasswd 生成账号密码后替换
  10. data:
  11. htpasswd: ""
  12. ---
  13. apiVersion: v1
  14. kind: PersistentVolumeClaim
  15. metadata:
  16. name: registry-data
  17. namespace: default
  18. spec:
  19. accessModes:
  20. - ReadWriteOnce
  21. resources:
  22. requests:
  23. storage: 10Gi
  24. ---
  25. apiVersion: apps/v1
  26. kind: Deployment
  27. metadata:
  28. name: docker-registry
  29. namespace: default
  30. spec:
  31. replicas: 1
  32. selector:
  33. matchLabels:
  34. app: docker-registry
  35. template:
  36. metadata:
  37. labels:
  38. app: docker-registry
  39. spec:
  40. containers:
  41. - name: registry
  42. image: registry.cn-hangzhou.aliyuncs.com/zhongpengqun/wanderer:amd64-linux-docker-registry-v2
  43. ports:
  44. - containerPort: 5000
  45. resources:
  46. limits:
  47. cpu: "0.5"
  48. memory: "256Mi"
  49. requests:
  50. cpu: "0.2"
  51. memory: "128Mi"
  52. env:
  53. - name: REGISTRY_AUTH
  54. value: "htpasswd"
  55. - name: REGISTRY_AUTH_HTPASSWD_REALM
  56. value: "Docker Registry"
  57. - name: REGISTRY_AUTH_HTPASSWD_PATH
  58. value: "/auth/htpasswd"
  59. volumeMounts:
  60. - name: registry-data
  61. mountPath: /var/lib/registry
  62. - name: registry-auth
  63. mountPath: /auth
  64. readOnly: true
  65. volumes:
  66. - name: registry-data
  67. persistentVolumeClaim:
  68. claimName: registry-data
  69. - name: registry-auth
  70. secret:
  71. secretName: registry-auth
  72. ---
  73. apiVersion: v1
  74. kind: Service
  75. metadata:
  76. name: docker-registry
  77. namespace: default
  78. spec:
  79. type: NodePort
  80. ports:
  81. - port: 5000
  82. nodePort: 30009
  83. targetPort: 5000
  84. selector:
  85. app: docker-registry