save to main
This commit is contained in:
parent
e2b2a99155
commit
138ff30dd5
1 changed files with 304 additions and 0 deletions
304
postiz/postiz.yaml
Normal file
304
postiz/postiz.yaml
Normal file
|
|
@ -0,0 +1,304 @@
|
|||
# ======================================================
|
||||
# POSTIZ FULL STACK (KUBERNETES - SINGLE FILE)
|
||||
# ======================================================
|
||||
|
||||
# -------------------------
|
||||
# POSTGRES (APP DB)
|
||||
# -------------------------
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: postiz-db-pvc
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
storageClassName: microk8s-hostpath
|
||||
resources:
|
||||
requests:
|
||||
storage: 2Gi
|
||||
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: postiz-postgres
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: postiz-postgres
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: postiz-postgres
|
||||
spec:
|
||||
containers:
|
||||
- name: postgres
|
||||
image: postgres:17-alpine
|
||||
env:
|
||||
- name: POSTGRES_USER
|
||||
value: postiz-user
|
||||
- name: POSTGRES_PASSWORD
|
||||
value: postiz-password
|
||||
- name: POSTGRES_DB
|
||||
value: postiz-db-local
|
||||
volumeMounts:
|
||||
- mountPath: /var/lib/postgresql/data
|
||||
name: postgres-storage
|
||||
volumes:
|
||||
- name: postgres-storage
|
||||
persistentVolumeClaim:
|
||||
claimName: postiz-db-pvc
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: postiz-postgres
|
||||
spec:
|
||||
selector:
|
||||
app: postiz-postgres
|
||||
ports:
|
||||
- port: 5432
|
||||
|
||||
# -------------------------
|
||||
# REDIS
|
||||
# -------------------------
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: postiz-redis
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: postiz-redis
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: postiz-redis
|
||||
spec:
|
||||
containers:
|
||||
- name: redis
|
||||
image: redis:7.2
|
||||
ports:
|
||||
- containerPort: 6379
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: postiz-redis
|
||||
spec:
|
||||
selector:
|
||||
app: postiz-redis
|
||||
ports:
|
||||
- port: 6379
|
||||
|
||||
# -------------------------
|
||||
# TEMPORAL POSTGRES
|
||||
# -------------------------
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: temporal-postgres
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: temporal-postgres
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: temporal-postgres
|
||||
spec:
|
||||
containers:
|
||||
- name: postgres
|
||||
image: postgres:16
|
||||
env:
|
||||
- name: POSTGRES_USER
|
||||
value: temporal
|
||||
- name: POSTGRES_PASSWORD
|
||||
value: temporal
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: temporal-postgres
|
||||
spec:
|
||||
selector:
|
||||
app: temporal-postgres
|
||||
ports:
|
||||
- port: 5432
|
||||
|
||||
# -------------------------
|
||||
# ELASTICSEARCH
|
||||
# -------------------------
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: temporal-elasticsearch
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: temporal-elasticsearch
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: temporal-elasticsearch
|
||||
spec:
|
||||
containers:
|
||||
- name: elasticsearch
|
||||
image: elasticsearch:7.17.27
|
||||
env:
|
||||
- name: discovery.type
|
||||
value: single-node
|
||||
- name: ES_JAVA_OPTS
|
||||
value: "-Xms256m -Xmx256m"
|
||||
ports:
|
||||
- containerPort: 9200
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: temporal-elasticsearch
|
||||
spec:
|
||||
selector:
|
||||
app: temporal-elasticsearch
|
||||
ports:
|
||||
- port: 9200
|
||||
|
||||
# -------------------------
|
||||
# TEMPORAL
|
||||
# -------------------------
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: temporal
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: temporal
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: temporal
|
||||
spec:
|
||||
containers:
|
||||
- name: temporal
|
||||
image: temporalio/auto-setup:1.28.1
|
||||
env:
|
||||
- name: DB
|
||||
value: postgres12
|
||||
- name: POSTGRES_USER
|
||||
value: temporal
|
||||
- name: POSTGRES_PWD
|
||||
value: temporal
|
||||
- name: POSTGRES_SEEDS
|
||||
value: temporal-postgres
|
||||
- name: ENABLE_ES
|
||||
value: "true"
|
||||
- name: ES_SEEDS
|
||||
value: temporal-elasticsearch
|
||||
ports:
|
||||
- containerPort: 7233
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: temporal
|
||||
spec:
|
||||
selector:
|
||||
app: temporal
|
||||
ports:
|
||||
- port: 7233
|
||||
|
||||
# -------------------------
|
||||
# POSTIZ APP
|
||||
# -------------------------
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: postiz
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: postiz
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: postiz
|
||||
spec:
|
||||
containers:
|
||||
- name: postiz
|
||||
image: ghcr.io/gitroomhq/postiz-app:latest
|
||||
env:
|
||||
- name: MAIN_URL
|
||||
value: https://postiz.juntekim.com
|
||||
- name: FRONTEND_URL
|
||||
value: https://postiz.juntekim.com
|
||||
- name: NEXT_PUBLIC_BACKEND_URL
|
||||
value: https://postiz.juntekim.com/api
|
||||
- name: JWT_SECRET
|
||||
value: change-me
|
||||
- name: DATABASE_URL
|
||||
value: postgresql://postiz-user:postiz-password@postiz-postgres:5432/postiz-db-local
|
||||
- name: REDIS_URL
|
||||
value: redis://postiz-redis:6379
|
||||
- name: TEMPORAL_ADDRESS
|
||||
value: temporal:7233
|
||||
- name: STORAGE_PROVIDER
|
||||
value: local
|
||||
- name: UPLOAD_DIRECTORY
|
||||
value: /uploads
|
||||
- name: NEXT_PUBLIC_UPLOAD_DIRECTORY
|
||||
value: /uploads
|
||||
ports:
|
||||
- containerPort: 5000
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: postiz
|
||||
spec:
|
||||
selector:
|
||||
app: postiz
|
||||
ports:
|
||||
- port: 5000
|
||||
targetPort: 5000
|
||||
|
||||
# -------------------------
|
||||
# TRAEFIK INGRESS
|
||||
# -------------------------
|
||||
---
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: IngressRoute
|
||||
metadata:
|
||||
name: postiz-ingress
|
||||
spec:
|
||||
entryPoints:
|
||||
- websecure
|
||||
routes:
|
||||
- match: Host(`postiz.juntekim.com`)
|
||||
kind: Rule
|
||||
services:
|
||||
- name: postiz
|
||||
port: 5000
|
||||
tls:
|
||||
certResolver: myresolver
|
||||
domains:
|
||||
- main: postiz.juntekim.com
|
||||
|
||||
Loading…
Add table
Reference in a new issue