first version of working infra
This commit is contained in:
@@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=Docker
|
||||
|
||||
[Container]
|
||||
Image=docker.io/postgres:alpine
|
||||
Pod=synapse.pod
|
||||
Volume=postgres.volume:/var/lib/postgresql/data
|
||||
Environment=POSTGRES_USER=synapse
|
||||
Environment=POSTGRES_PASSWORD=changeme
|
||||
Environment=POSTGRES_INITDB_ARGS=--encoding=UTF-8 --lc-collate=C --lc-ctype=C
|
||||
Network=synapse.network
|
||||
|
||||
[Service]
|
||||
Restart=always
|
||||
@@ -0,0 +1,3 @@
|
||||
[Kube]
|
||||
Yaml=postgres.yml
|
||||
Network=synapse.network
|
||||
@@ -1 +0,0 @@
|
||||
[Volume]
|
||||
@@ -0,0 +1,38 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: postgres-data
|
||||
labels:
|
||||
app: postgres
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 20Gi
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
name: postgres
|
||||
spec:
|
||||
containers:
|
||||
- name: postgres
|
||||
image: docker.io/postgres:17-alpine
|
||||
volumeMounts:
|
||||
- name: postgres-data-pvc
|
||||
mountPath: /var/lib/postgresql/data
|
||||
env:
|
||||
- name: POSTGRES_PASSWORD
|
||||
value: changeme
|
||||
- name: POSTGRES_USER
|
||||
value: synapse
|
||||
- name: POSTGRES_DB
|
||||
value: synapse
|
||||
- name: POSTGRES_INITDB_ARGS
|
||||
value: --encoding=UTF8 --locale=C
|
||||
volumes:
|
||||
- name: postgres-data-pvc
|
||||
persistentVolumeClaim:
|
||||
claimName: postgres-data
|
||||
@@ -0,0 +1,34 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: synapse-config
|
||||
data:
|
||||
homeserver.yaml: |
|
||||
server_name: "test.legonzaur.fr"
|
||||
pid_file: /data/homeserver.pid
|
||||
listeners:
|
||||
- port: 8008
|
||||
tls: false
|
||||
type: http
|
||||
x_forwarded: true
|
||||
resources:
|
||||
- names: [client, federation]
|
||||
compress: false
|
||||
database:
|
||||
name: psycopg2
|
||||
args:
|
||||
user: synapse
|
||||
password: changeme
|
||||
dbname: synapse
|
||||
host: postgres
|
||||
cp_min: 5
|
||||
cp_max: 10
|
||||
log_config: "/data/test.legonzaur.fr.log.config"
|
||||
media_store_path: /data/media_store
|
||||
registration_shared_secret: "8bn6seIG;1#0p9d~Y~d17*~mehlG-@DDJ~W8Yg9r4B,77*D;Uy"
|
||||
report_stats: true
|
||||
macaroon_secret_key: "@.fx9y+rL_JSE0;7PPYrBuI&,sa;mXHLeFywLgWlDSg;3faNCx"
|
||||
form_secret: "qu6DRGb.1H*Pe:tE4r+E~ZvND.UKiIusz~TwOMz,TLVUpX#9vi"
|
||||
signing_key_path: "/data/test.legonzaur.fr.signing.key"
|
||||
trusted_key_servers:
|
||||
- server_name: "matrix.org"
|
||||
@@ -1 +0,0 @@
|
||||
[Volume]
|
||||
@@ -1,13 +0,0 @@
|
||||
[Unit]
|
||||
Description=Synapse init container
|
||||
|
||||
[Container]
|
||||
Image=docker.io/matrixdotorg/synapse:latest
|
||||
Pod=synapse.pod
|
||||
Volume=synapse-data.volume:/data
|
||||
Environment=SYNAPSE_SERVER_NAME=test.legonzaur.fr
|
||||
Environment=SYNAPSE_REPORT_STATS=no
|
||||
Exec=generate
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
@@ -1 +0,0 @@
|
||||
[Volume]
|
||||
@@ -1 +0,0 @@
|
||||
[Volume]
|
||||
@@ -1,15 +0,0 @@
|
||||
[Unit]
|
||||
Description=Synapse
|
||||
|
||||
[Container]
|
||||
Image=docker.io/matrixdotorg/synapse:latest
|
||||
Pod=synapse.pod
|
||||
Volume=synapse-data.volume:/data
|
||||
Volume=synapse-uploads.volume:/data/uploads
|
||||
Volume=synapse-media.volume:/data/media
|
||||
Environment=SYNAPSE_CONFIG_PATH=/data/homeserver.yaml
|
||||
Network=synapse.network
|
||||
PublishPort=8008:8008
|
||||
|
||||
[Service]
|
||||
Restart=always
|
||||
@@ -0,0 +1,14 @@
|
||||
[Unit]
|
||||
Requires=postgres.service
|
||||
After=postgres.service
|
||||
|
||||
[Kube]
|
||||
Yaml=synapse.yml
|
||||
|
||||
Network=synapse.network
|
||||
|
||||
PublishPort=8008:8008
|
||||
ConfigMap=synapse-configmap.yml
|
||||
|
||||
[Install]
|
||||
WantedBy=default.target
|
||||
@@ -1 +0,0 @@
|
||||
[Pod]
|
||||
+86
@@ -0,0 +1,86 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: synapse-media
|
||||
labels:
|
||||
app: synapse
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 20Gi
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: synapse-uploads
|
||||
labels:
|
||||
app: synapse
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 20Gi
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: synapse-data
|
||||
labels:
|
||||
app: synapse
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 20Gi
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
name: synapse
|
||||
spec:
|
||||
initContainers:
|
||||
- name: synapse-init
|
||||
image: docker.io/matrixdotorg/synapse:latest
|
||||
args: ["generate"]
|
||||
volumeMounts:
|
||||
- name: synapse-data-pvc
|
||||
mountPath: /data
|
||||
env:
|
||||
- name: SYNAPSE_SERVER_NAME
|
||||
value: test.legonzaur.fr
|
||||
- name: SYNAPSE_REPORT_STATS
|
||||
value: no
|
||||
containers:
|
||||
- name: synapse
|
||||
image: docker.io/matrixdotorg/synapse:latest
|
||||
volumeMounts:
|
||||
- name: synapse-data-pvc
|
||||
mountPath: /data
|
||||
- name: synapse-uploads-pvc
|
||||
mountPath: /data/uploads
|
||||
- name: synapse-media-pvc
|
||||
mountPath: /data/media
|
||||
- name: synapse-config
|
||||
readOnly: true
|
||||
mountPath: /data/homeserver.yaml
|
||||
subPath: homeserver.yaml
|
||||
volumes:
|
||||
- name: synapse-config
|
||||
configMap:
|
||||
name: synapse-config
|
||||
- name: synapse-data-pvc
|
||||
persistentVolumeClaim:
|
||||
claimName: synapse-data
|
||||
- name: synapse-uploads-pvc
|
||||
persistentVolumeClaim:
|
||||
claimName: synapse-uploads
|
||||
- name: synapse-media-pvc
|
||||
persistentVolumeClaim:
|
||||
claimName: synapse-media
|
||||
Reference in New Issue
Block a user