Skip to content

Instantly share code, notes, and snippets.

@mcchin
Last active December 24, 2022 22:10
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save mcchin/bb0974f9f29ca39af338d56ffc033216 to your computer and use it in GitHub Desktop.
Save mcchin/bb0974f9f29ca39af338d56ffc033216 to your computer and use it in GitHub Desktop.
Appwrite k8s (WIP)
# NOTE: Setup your own namespace and k8s environment on your local machine
# Also need to build and push docker image where your k8s can access
kubectl create -f ./appwrite-certificates-persistentvolumeclaim.yaml
kubectl create -f ./appwrite-config-persistentvolumeclaim.yaml
kubectl create -f ./traefik-claim0-persistentvolumeclaim.yaml
kubectl create -f ./appwrite-redis-persistentvolumeclaim.yaml
kubectl create -f ./appwrite-mariadb-persistentvolumeclaim.yaml
kubectl create -f ./appwrite-influxdb-persistentvolumeclaim.yaml
kubectl create -f ./appwrite-uploads-persistentvolumeclaim.yaml
kubectl create -f ./traefik-deployment.yaml
kubectl create -f ./telegraf-deployment.yaml
kubectl create -f ./request-catcher-deployment.yaml
kubectl create -f ./redis-deployment.yaml
kubectl create -f ./mariadb-deployment.yaml
kubectl create -f ./maildev-deployment.yaml
kubectl create -f ./influxdb-deployment.yaml
kubectl create -f ./clamav-deployment.yaml
kubectl create -f ./adminer-deployment.yaml
kubectl create -f ./appwrite-worker-webhooks-deployment.yaml
kubectl create -f ./appwrite-worker-usage-deployment.yaml
kubectl create -f ./appwrite-worker-tasks-deployment.yaml
kubectl create -f ./appwrite-worker-mails-deployment.yaml
kubectl create -f ./appwrite-worker-functions-deployment.yaml
kubectl create -f ./appwrite-worker-deletes-deployment.yaml
kubectl create -f ./appwrite-worker-certificates-deployment.yaml
kubectl create -f ./appwrite-worker-audits-deployment.yaml
kubectl create -f ./appwrite-schedule-deployment.yaml
kubectl create -f ./appwrite-maintenance-deployment.yaml
kubectl create -f ./appwrite-deployment.yaml
kubectl create -f ./traefik-service.yaml
kubectl create -f ./request-catcher-service.yaml
kubectl create -f ./mariadb-service.yaml
kubectl create -f ./redis-service.yaml
kubectl create -f ./clamav-service.yaml
kubectl create -f ./influxdb-service.yaml
kubectl create -f ./telegraf-service.yaml
kubectl create -f ./maildev-service.yaml
kubectl create -f ./appwrite-service.yaml
kubectl create -f ./adminer-service.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: adminer
name: adminer
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: adminer
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: adminer
spec:
containers:
- image: adminer
imagePullPolicy: ""
name: adminer
ports:
- containerPort: 8080
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: adminer
name: adminer
spec:
ports:
- name: "9505"
port: 9505
targetPort: 8080
selector:
io.kompose.service: adminer
status:
loadBalancer: {}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
io.kompose.service: appwrite-certificates
name: appwrite-certificates
spec:
accessModes:
- ReadWriteOnce
# - ReadOnlyMany
# volumeName: appwrite-certificates
resources:
requests:
storage: 100Mi
storageClassName: standard
status: {}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
io.kompose.service: appwrite-config
name: appwrite-config
spec:
accessModes:
- ReadWriteOnce
# - ReadOnlyMany
# volumeName: appwrite-config
resources:
requests:
storage: 100Mi
storageClassName: standard
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
traefik.constraint-label-stack: appwrite
traefik.enable: "true"
traefik.http.routers.appwrite-secure.rule: PathPrefix(`/`)
traefik.http.routers.appwrite-secure.tls: "true"
traefik.http.routers.appwrite.rule: PathPrefix(`/`)
creationTimestamp: null
labels:
io.kompose.service: appwrite
name: appwrite
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
traefik.constraint-label-stack: appwrite
traefik.enable: "true"
traefik.http.routers.appwrite-secure.rule: PathPrefix(`/`)
traefik.http.routers.appwrite-secure.tls: "true"
traefik.http.routers.appwrite.rule: PathPrefix(`/`)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite
spec:
containers:
- image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite
ports:
- containerPort: 80
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
io.kompose.service: appwrite-influxdb
name: appwrite-influxdb
spec:
accessModes:
- ReadWriteOnce
# volumeName: appwrite-influxdb
resources:
requests:
storage: 100Mi
storageClassName: standard
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: appwrite-maintenance
name: appwrite-maintenance
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite-maintenance
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite-maintenance
spec:
containers:
- command:
- maintenance
image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite-maintenance
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
io.kompose.service: appwrite-mariadb
name: appwrite-mariadb
spec:
accessModes:
- ReadWriteOnce
# volumeName: appwrite-mariadb
resources:
requests:
storage: 100Mi
storageClassName: standard
status: {}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
io.kompose.service: appwrite-redis
name: appwrite-redis
spec:
accessModes:
- ReadWriteOnce
# volumeName: appwrite-redis
resources:
requests:
storage: 100Mi
storageClassName: standard
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: appwrite-schedule
name: appwrite-schedule
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite-schedule
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite-schedule
spec:
containers:
- command:
- schedule
image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite-schedule
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
traefik.constraint-label-stack: appwrite
traefik.enable: "true"
traefik.http.routers.appwrite-secure.rule: PathPrefix(`/`)
traefik.http.routers.appwrite-secure.tls: "true"
traefik.http.routers.appwrite.rule: PathPrefix(`/`)
creationTimestamp: null
labels:
io.kompose.service: appwrite
name: appwrite
spec:
ports:
- name: "9501"
port: 9501
targetPort: 80
selector:
io.kompose.service: appwrite
status:
loadBalancer: {}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
io.kompose.service: appwrite-uploads
name: appwrite-uploads
spec:
accessModes:
- ReadWriteOnce
# volumeName: appwrite-uploads
resources:
requests:
storage: 100Mi
storageClassName: standard
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: appwrite-worker-audits
name: appwrite-worker-audits
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite-worker-audits
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite-worker-audits
spec:
containers:
- command:
- worker-audits
image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite-worker-audits
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: appwrite-worker-certificates
name: appwrite-worker-certificates
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite-worker-certificates
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite-worker-certificates
spec:
containers:
- command:
- worker-certificates
image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite-worker-certificates
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: appwrite-worker-deletes
name: appwrite-worker-deletes
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite-worker-deletes
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite-worker-deletes
spec:
containers:
- command:
- worker-deletes
image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite-worker-deletes
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: appwrite-worker-functions
name: appwrite-worker-functions
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite-worker-functions
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite-worker-functions
spec:
containers:
- command:
- worker-functions
image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite-worker-functions
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: appwrite-worker-mails
name: appwrite-worker-mails
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite-worker-mails
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite-worker-mails
spec:
containers:
- command:
- worker-mails
image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite-worker-mails
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: appwrite-worker-tasks
name: appwrite-worker-tasks
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite-worker-tasks
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite-worker-tasks
spec:
containers:
- command:
- worker-tasks
image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite-worker-tasks
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: appwrite-worker-usage
name: appwrite-worker-usage
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite-worker-usage
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite-worker-usage
spec:
containers:
- command:
- worker-usage
image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite-worker-usage
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: appwrite-worker-webhooks
name: appwrite-worker-webhooks
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: appwrite-worker-webhooks
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: appwrite-worker-webhooks
spec:
containers:
- command:
- worker-webhooks
image: asia.gcr.io/{GCP Project ID}/appwrite # NOTE: Your image location
imagePullPolicy: ""
name: appwrite-worker-webhooks
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: clamav
name: clamav
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: clamav
strategy:
type: Recreate
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: clamav
spec:
containers:
- image: appwrite/clamav:1.2.0
imagePullPolicy: ""
name: appwrite-clamav
ports:
- containerPort: 3310
resources: {}
volumeMounts:
- mountPath: /storage/uploads
name: appwrite-uploads
restartPolicy: Always
serviceAccountName: ""
volumes:
- name: appwrite-uploads
persistentVolumeClaim:
claimName: appwrite-uploads
status: {}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: clamav
name: clamav
spec:
ports:
- name: "3310"
port: 3310
targetPort: 3310
selector:
io.kompose.service: clamav
status:
loadBalancer: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: influxdb
name: influxdb
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: influxdb
strategy:
type: Recreate
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: influxdb
spec:
containers:
- image: influxdb:1.8-alpine
imagePullPolicy: ""
name: appwrite-influxdb
ports:
- containerPort: 8086
resources: {}
volumeMounts:
- mountPath: /var/lib/influxdb
name: appwrite-influxdb
restartPolicy: Always
serviceAccountName: ""
volumes:
- name: appwrite-influxdb
persistentVolumeClaim:
claimName: appwrite-influxdb
status: {}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: influxdb
name: influxdb
spec:
ports:
- name: "8086"
port: 8086
targetPort: 8086
selector:
io.kompose.service: influxdb
status:
loadBalancer: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: maildev
name: maildev
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: maildev
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: maildev
spec:
containers:
- image: djfarrelly/maildev
imagePullPolicy: ""
name: appwrite-maildev
ports:
- containerPort: 80
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: maildev
name: maildev
spec:
ports:
- name: "9503"
port: 9503
targetPort: 80
selector:
io.kompose.service: maildev
status:
loadBalancer: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: mariadb
name: mariadb
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: mariadb
strategy:
type: Recreate
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: mariadb
spec:
containers:
- args:
- mysqld
- --innodb-flush-method=fsync
env:
- name: MYSQL_DATABASE
- name: MYSQL_PASSWORD
- name: MYSQL_ROOT_PASSWORD
value: password
- name: MYSQL_USER
image: appwrite/mariadb:1.2.0
imagePullPolicy: ""
name: appwrite-mariadb
ports:
- containerPort: 3306
resources: {}
volumeMounts:
- mountPath: /var/lib/mysql
name: appwrite-mariadb
restartPolicy: Always
serviceAccountName: ""
volumes:
- name: appwrite-mariadb
persistentVolumeClaim:
claimName: appwrite-mariadb
status: {}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: mariadb
name: mariadb
spec:
ports:
- name: "3306"
port: 3306
targetPort: 3306
selector:
io.kompose.service: mariadb
status:
loadBalancer: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: redis
name: redis
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: redis
strategy:
type: Recreate
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: redis
spec:
containers:
- image: redis:6.0
imagePullPolicy: ""
name: appwrite-redis
ports:
- containerPort: 6379
resources: {}
volumeMounts:
- mountPath: /data
name: appwrite-redis
restartPolicy: Always
serviceAccountName: ""
volumes:
- name: appwrite-redis
persistentVolumeClaim:
claimName: appwrite-redis
status: {}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: redis
name: redis
spec:
ports:
- name: "6379"
port: 6379
targetPort: 6379
selector:
io.kompose.service: redis
status:
loadBalancer: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: request-catcher
name: request-catcher
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: request-catcher
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: request-catcher
spec:
containers:
- image: smarterdm/http-request-catcher
imagePullPolicy: ""
name: appwrite-request-catcher
ports:
- containerPort: 5000
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: request-catcher
name: request-catcher
spec:
ports:
- name: "9504"
port: 9504
targetPort: 5000
selector:
io.kompose.service: request-catcher
status:
loadBalancer: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: telegraf
name: telegraf
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: telegraf
strategy: {}
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.service: telegraf
spec:
containers:
- image: appwrite/telegraf:1.0.0
imagePullPolicy: ""
name: appwrite-telegraf
ports:
- containerPort: 8125
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes: null
status: {}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: telegraf
name: telegraf
spec:
ports:
- name: "8125"
port: 8125
targetPort: 8125
selector:
io.kompose.service: telegraf
status:
loadBalancer: {}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
io.kompose.service: traefik-claim0
name: traefik-claim0
spec:
accessModes:
- ReadWriteOnce
# volumeName: traefik-claim0
resources:
requests:
storage: 100Mi
storageClassName: standard
status: {}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: traefik
name: traefik
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: traefik
strategy:
type: Recreate
template:
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.network/appwrite: "true"
io.kompose.network/gateway: "true"
io.kompose.service: traefik
spec:
containers:
- args:
- --log.level=DEBUG
- --api.insecure=true
- --providers.file.directory=/storage/config
- --providers.file.watch=true
- --providers.docker=false
- --providers.docker.exposedByDefault=false
- --providers.docker.constraints=Label(`traefik.constraint-label-stack`,`appwrite`)
- --entrypoints.web.address=:80
- --entrypoints.websecure.address=:443
- --accesslog=true
image: traefik:2.3
imagePullPolicy: ""
name: appwrite-traefik
ports:
- containerPort: 80
- containerPort: 443
- containerPort: 8080
resources: {}
volumeMounts:
- mountPath: /var/run/docker.sock
name: traefik-claim0
- mountPath: /storage/config
name: appwrite-config
# readOnly: true
- mountPath: /storage/certificates
name: appwrite-certificates
# readOnly: true
restartPolicy: Always
serviceAccountName: ""
volumes:
- name: traefik-claim0
persistentVolumeClaim:
claimName: traefik-claim0
- name: appwrite-config
persistentVolumeClaim:
claimName: appwrite-config
# readOnly: true
- name: appwrite-certificates
persistentVolumeClaim:
claimName: appwrite-certificates
# readOnly: true
status: {}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\ProgramData\chocolatey\lib\kubernetes-kompose\tools\kompose.exe
convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: traefik
name: traefik
spec:
ports:
- name: "80"
port: 80
targetPort: 80
- name: "443"
port: 443
targetPort: 443
- name: "9500"
port: 9500
targetPort: 8080
selector:
io.kompose.service: traefik
status:
loadBalancer: {}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment