| apiVersion: v1 |
| kind: PersistentVolume |
| metadata: |
| name: chartmuseum-storage-pv-volume |
| namespace: default |
| labels: |
| type: local |
| app: chartmuseum |
| spec: |
| storageClassName: manual |
| capacity: |
| storage: 2Gi |
| accessModes: |
| - ReadWriteOnce |
| hostPath: |
| path: "/var/chartmuseum/charts" |
| --- |
| apiVersion: v1 |
| kind: PersistentVolumeClaim |
| metadata: |
| name: chartmuseum-storage-pv-claim |
| namespace: default |
| labels: |
| app: chartmuseum |
| spec: |
| storageClassName: manual |
| accessModes: |
| - ReadWriteOnce |
| resources: |
| requests: |
| storage: 2Gi |
| --- |
| apiVersion: apps/v1 |
| kind: Deployment |
| metadata: |
| name: chartmuseum-deployment |
| namespace: default |
| labels: |
| app: chartmuseum |
| spec: |
| selector: |
| matchLabels: |
| app: chartmuseum |
| template: |
| metadata: |
| labels: |
| app: chartmuseum |
| version: v1 |
| spec: |
| securityContext: |
| runAsUser: 0 |
| containers: |
| - name: chartmuseum |
| image: chartmuseum/chartmuseum:latest |
| imagePullPolicy: IfNotPresent |
| env: |
| - name: STORAGE |
| value: local |
| - name: STORAGE_LOCAL_ROOTDIR |
| value: /charts |
| ports: |
| - name: http |
| containerPort: 8080 |
| resources: |
| limits: |
| memory: 256Mi |
| cpu: "250m" |
| requests: |
| memory: 128Mi |
| cpu: "80m" |
| volumeMounts: |
| - name: chartmuseum-persistent-storage |
| mountPath: /charts |
| volumes: |
| - name: chartmuseum-persistent-storage |
| persistentVolumeClaim: |
| claimName: chartmuseum-storage-pv-claim |
| replicas: 1 |
| --- |
| apiVersion: v1 |
| kind: Service |
| metadata: |
| name: chartmuseum |
| namespace: default |
| spec: |
| selector: |
| app: chartmuseum |
| ports: |
| - name: http |
| port: 8080 |
| targetPort: 8080 |
| nodePort: 31580 |
| type: LoadBalancer |