kubernetes: add and update new and existing projects
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				ci/woodpecker/push/demo-workflow Pipeline was successful
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	ci/woodpecker/push/demo-workflow Pipeline was successful
				
			This commit is contained in:
		
							
								
								
									
										195
									
								
								kubernetes/paperless-ngx/manifest.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										195
									
								
								kubernetes/paperless-ngx/manifest.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,195 @@ | ||||
| apiVersion: v1 | ||||
| kind: Namespace | ||||
| metadata: | ||||
|   name: paperless-ngx | ||||
| --- | ||||
| apiVersion: v1 | ||||
| kind: PersistentVolumeClaim | ||||
| metadata: | ||||
|   name: redis-data | ||||
|   namespace: paperless-ngx | ||||
| spec: | ||||
|   accessModes: | ||||
|     - ReadWriteOnce | ||||
|   resources: | ||||
|     requests: | ||||
|       storage: 1Gi | ||||
| --- | ||||
| apiVersion: v1 | ||||
| kind: ConfigMap | ||||
| metadata: | ||||
|   name: paperless-config | ||||
|   namespace: paperless-ngx | ||||
| data: | ||||
|   PAPERLESS_REDIS: "redis://redis:6379" | ||||
|   PAPERLESS_URL: "https://${PAPERLESS_HOST}" | ||||
|   PAPERLESS_TIME_ZONE: "Europe/Helsinki" | ||||
|   PAPERLESS_OCR_LANGUAGE: "eng" | ||||
|   PAPERLESS_SECRET_KEY: "change-me-to-a-secure-secret-key" | ||||
|   PAPERLESS_CSRF_TRUSTED_ORIGINS: "https://${PAPERLESS_HOST}" | ||||
|   PAPERLESS_USE_X_FORWARD_HOST: "true" | ||||
|   PAPERLESS_USE_X_FORWARD_PORT: "true" | ||||
| --- | ||||
| apiVersion: v1 | ||||
| kind: PersistentVolumeClaim | ||||
| metadata: | ||||
|   name: paperless-data | ||||
|   namespace: paperless-ngx | ||||
| spec: | ||||
|   accessModes: | ||||
|     - ReadWriteOnce | ||||
|   resources: | ||||
|     requests: | ||||
|       storage: 5Gi | ||||
| --- | ||||
| apiVersion: v1 | ||||
| kind: PersistentVolumeClaim | ||||
| metadata: | ||||
|   name: paperless-media | ||||
|   namespace: paperless-ngx | ||||
| spec: | ||||
|   accessModes: | ||||
|     - ReadWriteOnce | ||||
|   resources: | ||||
|     requests: | ||||
|       storage: 5Gi | ||||
| --- | ||||
| apiVersion: apps/v1 | ||||
| kind: Deployment | ||||
| metadata: | ||||
|   name: redis | ||||
|   namespace: paperless-ngx | ||||
| spec: | ||||
|   replicas: 1 | ||||
|   selector: | ||||
|     matchLabels: | ||||
|       app: redis | ||||
|   template: | ||||
|     metadata: | ||||
|       labels: | ||||
|         app: redis | ||||
|     spec: | ||||
|       containers: | ||||
|         - name: redis | ||||
|           image: redis:7 | ||||
|           ports: | ||||
|             - containerPort: 6379 | ||||
|           volumeMounts: | ||||
|             - name: redis-data | ||||
|               mountPath: /data | ||||
|           resources: | ||||
|             requests: | ||||
|               memory: "128Mi" | ||||
|               cpu: "50m" | ||||
|             limits: | ||||
|               memory: "256Mi" | ||||
|               cpu: "200m" | ||||
|       volumes: | ||||
|         - name: redis-data | ||||
|           persistentVolumeClaim: | ||||
|             claimName: redis-data | ||||
| --- | ||||
| apiVersion: apps/v1 | ||||
| kind: Deployment | ||||
| metadata: | ||||
|   name: paperless-ngx | ||||
|   namespace: paperless-ngx | ||||
| spec: | ||||
|   replicas: 1 | ||||
|   selector: | ||||
|     matchLabels: | ||||
|       app: paperless-ngx | ||||
|   template: | ||||
|     metadata: | ||||
|       labels: | ||||
|         app: paperless-ngx | ||||
|     spec: | ||||
|       containers: | ||||
|         - name: paperless-ngx | ||||
|           image: ghcr.io/paperless-ngx/paperless-ngx:latest | ||||
|           ports: | ||||
|             - containerPort: 8000 | ||||
|           envFrom: | ||||
|             - configMapRef: | ||||
|                 name: paperless-config | ||||
|           volumeMounts: | ||||
|             - name: paperless-data | ||||
|               mountPath: /usr/src/paperless/data | ||||
|             - name: paperless-media | ||||
|               mountPath: /usr/src/paperless/media | ||||
|           resources: | ||||
|             requests: | ||||
|               memory: "512Mi" | ||||
|               cpu: "200m" | ||||
|             limits: | ||||
|               memory: "2Gi" | ||||
|               cpu: "1000m" | ||||
|           livenessProbe: | ||||
|             httpGet: | ||||
|               path: / | ||||
|               port: 8000 | ||||
|             initialDelaySeconds: 60 | ||||
|             periodSeconds: 30 | ||||
|           readinessProbe: | ||||
|             httpGet: | ||||
|               path: / | ||||
|               port: 8000 | ||||
|             initialDelaySeconds: 30 | ||||
|             periodSeconds: 10 | ||||
|       volumes: | ||||
|         - name: paperless-data | ||||
|           persistentVolumeClaim: | ||||
|             claimName: paperless-data | ||||
|         - name: paperless-media | ||||
|           persistentVolumeClaim: | ||||
|             claimName: paperless-media | ||||
| --- | ||||
| apiVersion: v1 | ||||
| kind: Service | ||||
| metadata: | ||||
|   name: redis | ||||
|   namespace: paperless-ngx | ||||
| spec: | ||||
|   selector: | ||||
|     app: redis | ||||
|   ports: | ||||
|     - port: 6379 | ||||
|       targetPort: 6379 | ||||
| --- | ||||
| apiVersion: v1 | ||||
| kind: Service | ||||
| metadata: | ||||
|   name: paperless-ngx | ||||
|   namespace: paperless-ngx | ||||
| spec: | ||||
|   selector: | ||||
|     app: paperless-ngx | ||||
|   ports: | ||||
|     - port: 8000 | ||||
|       targetPort: 8000 | ||||
|   type: ClusterIP | ||||
| --- | ||||
| apiVersion: networking.k8s.io/v1 | ||||
| kind: Ingress | ||||
| metadata: | ||||
|   name: paperless-ngx-ingress | ||||
|   namespace: paperless-ngx | ||||
|   annotations: | ||||
|     cert-manager.io/cluster-issuer: "acme-issuer" | ||||
| spec: | ||||
|   ingressClassName: nginx | ||||
|   tls: | ||||
|     - hosts: | ||||
|         - "${PAPERLESS_HOST}" | ||||
|       secretName: paperless-tls | ||||
|   rules: | ||||
|     - host: "${PAPERLESS_HOST}" | ||||
|       http: | ||||
|         paths: | ||||
|           - path: / | ||||
|             pathType: Prefix | ||||
|             backend: | ||||
|               service: | ||||
|                 name: paperless-ngx | ||||
|                 port: | ||||
|                   number: 8000 | ||||
		Reference in New Issue
	
	Block a user