feat(dev): okteto integration
This commit is contained in:
		
							parent
							
								
									b21b058005
								
							
						
					
					
						commit
						9783f2de67
					
				
					 8 changed files with 300 additions and 1 deletions
				
			
		
							
								
								
									
										3
									
								
								chart/Chart.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								chart/Chart.yaml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,3 @@ | |||
| apiVersion: v2 | ||||
| name: misskey | ||||
| version: 0.0.0 | ||||
							
								
								
									
										166
									
								
								chart/files/default.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										166
									
								
								chart/files/default.yml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,166 @@ | |||
| #━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ | ||||
| # Misskey configuration | ||||
| #━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ | ||||
| 
 | ||||
| #   ┌─────┐ | ||||
| #───┘ URL └───────────────────────────────────────────────────── | ||||
| 
 | ||||
| # Final accessible URL seen by a user. | ||||
| url: https://example.tld/ | ||||
| 
 | ||||
| # ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE | ||||
| # URL SETTINGS AFTER THAT! | ||||
| 
 | ||||
| #   ┌───────────────────────┐ | ||||
| #───┘ Port and TLS settings └─────────────────────────────────── | ||||
| 
 | ||||
| # | ||||
| # Misskey supports two deployment options for public. | ||||
| # | ||||
| 
 | ||||
| # Option 1: With Reverse Proxy | ||||
| # | ||||
| #                 +----- https://example.tld/ ------------+ | ||||
| #   +------+      |+-------------+      +----------------+| | ||||
| #   | User | ---> || Proxy (443) | ---> | Misskey (3000) || | ||||
| #   +------+      |+-------------+      +----------------+| | ||||
| #                 +---------------------------------------+ | ||||
| # | ||||
| #   You need to setup reverse proxy. (eg. nginx) | ||||
| #   You do not define 'https' section. | ||||
| 
 | ||||
| # Option 2: Standalone | ||||
| # | ||||
| #                 +- https://example.tld/ -+ | ||||
| #   +------+      |   +---------------+    | | ||||
| #   | User | ---> |   | Misskey (443) |    | | ||||
| #   +------+      |   +---------------+    | | ||||
| #                 +------------------------+ | ||||
| # | ||||
| #   You need to run Misskey as root. | ||||
| #   You need to set Certificate in 'https' section. | ||||
| 
 | ||||
| # To use option 1, uncomment below line. | ||||
| port: 3000    # A port that your Misskey server should listen. | ||||
| 
 | ||||
| # To use option 2, uncomment below lines. | ||||
| #port: 443 | ||||
| 
 | ||||
| #https: | ||||
| #  # path for certification | ||||
| #  key: /etc/letsencrypt/live/example.tld/privkey.pem | ||||
| #  cert: /etc/letsencrypt/live/example.tld/fullchain.pem | ||||
| 
 | ||||
| #   ┌──────────────────────────┐ | ||||
| #───┘ PostgreSQL configuration └──────────────────────────────── | ||||
| 
 | ||||
| db: | ||||
|   host: localhost | ||||
|   port: 5432 | ||||
| 
 | ||||
|   # Database name | ||||
|   db: misskey | ||||
| 
 | ||||
|   # Auth | ||||
|   user: example-misskey-user | ||||
|   pass: example-misskey-pass | ||||
| 
 | ||||
|   # Whether disable Caching queries | ||||
|   #disableCache: true | ||||
| 
 | ||||
|   # Extra Connection options | ||||
|   #extra: | ||||
|   #  ssl: true | ||||
| 
 | ||||
| #   ┌─────────────────────┐ | ||||
| #───┘ Redis configuration └───────────────────────────────────── | ||||
| 
 | ||||
| redis: | ||||
|   host: localhost | ||||
|   port: 6379 | ||||
|   #pass: example-pass | ||||
|   #prefix: example-prefix | ||||
|   #db: 1 | ||||
| 
 | ||||
| #   ┌─────────────────────────────┐ | ||||
| #───┘ Elasticsearch configuration └───────────────────────────── | ||||
| 
 | ||||
| #elasticsearch: | ||||
| #  host: localhost | ||||
| #  port: 9200 | ||||
| #  ssl: false | ||||
| #  user:  | ||||
| #  pass:  | ||||
| 
 | ||||
| #   ┌───────────────┐ | ||||
| #───┘ ID generation └─────────────────────────────────────────── | ||||
| 
 | ||||
| # You can select the ID generation method. | ||||
| # You don't usually need to change this setting, but you can | ||||
| # change it according to your preferences. | ||||
| 
 | ||||
| # Available methods: | ||||
| # aid ... Short, Millisecond accuracy | ||||
| # meid ... Similar to ObjectID, Millisecond accuracy | ||||
| # ulid ... Millisecond accuracy | ||||
| # objectid ... This is left for backward compatibility | ||||
| 
 | ||||
| # ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE | ||||
| # ID SETTINGS AFTER THAT! | ||||
| 
 | ||||
| id: 'aid' | ||||
| 
 | ||||
| #   ┌─────────────────────┐ | ||||
| #───┘ Other configuration └───────────────────────────────────── | ||||
| 
 | ||||
| # Whether disable HSTS | ||||
| #disableHsts: true | ||||
| 
 | ||||
| # Number of worker processes | ||||
| #clusterLimit: 1 | ||||
| 
 | ||||
| # Job concurrency per worker | ||||
| # deliverJobConcurrency: 128 | ||||
| # inboxJobConcurrency: 16 | ||||
| 
 | ||||
| # Job rate limiter | ||||
| # deliverJobPerSec: 128 | ||||
| # inboxJobPerSec: 16 | ||||
| 
 | ||||
| # Job attempts | ||||
| # deliverJobMaxAttempts: 12 | ||||
| # inboxJobMaxAttempts: 8 | ||||
| 
 | ||||
| # IP address family used for outgoing request (ipv4, ipv6 or dual) | ||||
| #outgoingAddressFamily: ipv4 | ||||
| 
 | ||||
| # Syslog option | ||||
| #syslog: | ||||
| #  host: localhost | ||||
| #  port: 514 | ||||
| 
 | ||||
| # Proxy for HTTP/HTTPS | ||||
| #proxy: http://127.0.0.1:3128 | ||||
| 
 | ||||
| #proxyBypassHosts: [ | ||||
| #  'example.com', | ||||
| #  '192.0.2.8' | ||||
| #] | ||||
| 
 | ||||
| # Proxy for SMTP/SMTPS | ||||
| #proxySmtp: http://127.0.0.1:3128   # use HTTP/1.1 CONNECT | ||||
| #proxySmtp: socks4://127.0.0.1:1080 # use SOCKS4 | ||||
| #proxySmtp: socks5://127.0.0.1:1080 # use SOCKS5 | ||||
| 
 | ||||
| # Media Proxy | ||||
| #mediaProxy: https://example.com/proxy | ||||
| 
 | ||||
| # Sign to ActivityPub GET request (default: false) | ||||
| #signToActivityPubGet: true | ||||
| 
 | ||||
| #allowedPrivateNetworks: [ | ||||
| #  '127.0.0.1/32' | ||||
| #] | ||||
| 
 | ||||
| # Upload or download file size limits (bytes) | ||||
| #maxFileSize: 262144000 | ||||
							
								
								
									
										7
									
								
								chart/templates/ConfigMap.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								chart/templates/ConfigMap.yml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,7 @@ | |||
| apiVersion: v1 | ||||
| kind: ConfigMap | ||||
| metadata: | ||||
|   name: {{ include "misskey.fullname" . }}-config-file | ||||
| data: | ||||
|   default.yml: |- | ||||
| {{ .Files.Get "files/default.yml"|indent 4 }} | ||||
							
								
								
									
										44
									
								
								chart/templates/Deployment.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								chart/templates/Deployment.yml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,44 @@ | |||
| apiVersion: apps/v1 | ||||
| kind: Deployment | ||||
| metadata: | ||||
|   name: {{ include "misskey.fullname" . }} | ||||
|   labels: | ||||
| 		{{- include "misskey.labels" . | nindent 4 }} | ||||
| spec: | ||||
|   selector: | ||||
|     matchLabels: | ||||
| 			{{- include "misskey.selectorLabels" . | nindent 6 }} | ||||
|   replicas: 1 | ||||
|   template: | ||||
|     metadata: | ||||
|       labels: | ||||
| 				{{- include "misskey.selectorLabels" . | nindent 8 }} | ||||
|     spec: | ||||
|       containers: | ||||
|         - name: misskey | ||||
|           image: okteto.dev/misskey:latest | ||||
|           volumeMounts: | ||||
|             - name: config-file | ||||
|               mountPath: /misskey/.config | ||||
|               readOnly: true | ||||
|           ports: | ||||
|             - containerPort: 3000 | ||||
|         - name: postgres | ||||
|           image: postgres:14-alpine | ||||
|           env: | ||||
|             - name: POSTGRES_USER | ||||
|               value: "example-misskey-user" | ||||
|             - name: POSTGRES_PASSWORD | ||||
|               value: "example-misskey-pass" | ||||
|             - name: POSTGRES_DB | ||||
|               value: "misskey" | ||||
|           ports: | ||||
|             - containerPort: 5432 | ||||
|         - name: redis | ||||
|           image: redis:alpine | ||||
|           ports: | ||||
|             - containerPort: 6379 | ||||
|       volumes: | ||||
|         - name: config-file | ||||
|           configMap: | ||||
|             name: {{ include "misskey.fullname" . }}-config-file | ||||
							
								
								
									
										14
									
								
								chart/templates/Service.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								chart/templates/Service.yml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,14 @@ | |||
| apiVersion: v1 | ||||
| kind: Service | ||||
| metadata: | ||||
|   name: {{ include "misskey.fullname" . }} | ||||
|   annotations: | ||||
|     dev.okteto.com/auto-ingress: "true" | ||||
| spec: | ||||
|   type: ClusterIP | ||||
|   ports: | ||||
|     - port: 3000 | ||||
|       protocol: TCP | ||||
|       name: http | ||||
|   selector: | ||||
| 		{{- include "misskey.selectorLabels" . | nindent 4 }} | ||||
							
								
								
									
										62
									
								
								chart/templates/_helpers.tpl
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								chart/templates/_helpers.tpl
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,62 @@ | |||
| {{/* | ||||
| Expand the name of the chart. | ||||
| */}} | ||||
| {{- define "misskey.name" -}} | ||||
| {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} | ||||
| {{- end }} | ||||
| 
 | ||||
| {{/* | ||||
| Create a default fully qualified app name. | ||||
| We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). | ||||
| If release name contains chart name it will be used as a full name. | ||||
| */}} | ||||
| {{- define "misskey.fullname" -}} | ||||
| {{- if .Values.fullnameOverride }} | ||||
| {{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} | ||||
| {{- else }} | ||||
| {{- $name := default .Chart.Name .Values.nameOverride }} | ||||
| {{- if contains $name .Release.Name }} | ||||
| {{- .Release.Name | trunc 63 | trimSuffix "-" }} | ||||
| {{- else }} | ||||
| {{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} | ||||
| {{- end }} | ||||
| {{- end }} | ||||
| {{- end }} | ||||
| 
 | ||||
| {{/* | ||||
| Create chart name and version as used by the chart label. | ||||
| */}} | ||||
| {{- define "misskey.chart" -}} | ||||
| {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} | ||||
| {{- end }} | ||||
| 
 | ||||
| {{/* | ||||
| Common labels | ||||
| */}} | ||||
| {{- define "misskey.labels" -}} | ||||
| helm.sh/chart: {{ include "misskey.chart" . }} | ||||
| {{ include "misskey.selectorLabels" . }} | ||||
| {{- if .Chart.AppVersion }} | ||||
| app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} | ||||
| {{- end }} | ||||
| app.kubernetes.io/managed-by: {{ .Release.Service }} | ||||
| {{- end }} | ||||
| 
 | ||||
| {{/* | ||||
| Selector labels | ||||
| */}} | ||||
| {{- define "misskey.selectorLabels" -}} | ||||
| app.kubernetes.io/name: {{ include "misskey.name" . }} | ||||
| app.kubernetes.io/instance: {{ .Release.Name }} | ||||
| {{- end }} | ||||
| 
 | ||||
| {{/* | ||||
| Create the name of the service account to use | ||||
| */}} | ||||
| {{- define "misskey.serviceAccountName" -}} | ||||
| {{- if .Values.serviceAccount.create }} | ||||
| {{- default (include "misskey.fullname" .) .Values.serviceAccount.name }} | ||||
| {{- else }} | ||||
| {{- default "default" .Values.serviceAccount.name }} | ||||
| {{- end }} | ||||
| {{- end }} | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue