- Listmonk: newsletter/mailing list manager with PostgreSQL backend, NodePort 32375, Postmark SMTP. Replaces Ghost's broken Mailgun-only newsletter sending via n8n automation pipeline. - Mattermost: team messaging manifest, NodePort 32374, PostgreSQL backend. - Ghost: added Postmark SMTP config for transactional email, disabled staffDeviceVerification on all three instances (Ghost has no TOTP, only email-based verification which requires working SMTP). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
45 lines
1.3 KiB
YAML
45 lines
1.3 KiB
YAML
# Listmonk DB Init Job
|
|
# Creates listmonk database and user in PostgreSQL.
|
|
# Run once before deploying Listmonk.
|
|
#
|
|
# Deploy:
|
|
# kubectl create secret generic listmonk-secret \
|
|
# --from-literal=db-password='<password>' \
|
|
# --from-literal=admin-password='<password>' \
|
|
# --from-literal=postmark-token='<token>'
|
|
# kubectl apply -f listmonk-db-init.yaml
|
|
#
|
|
# Watch completion:
|
|
# kubectl get jobs -w
|
|
# kubectl logs job/listmonk-db-init
|
|
|
|
apiVersion: batch/v1
|
|
kind: Job
|
|
metadata:
|
|
name: listmonk-db-init
|
|
spec:
|
|
template:
|
|
spec:
|
|
restartPolicy: OnFailure
|
|
containers:
|
|
- name: listmonk-db-init
|
|
image: postgres:16
|
|
env:
|
|
- name: PGPASSWORD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: postgres-secret
|
|
key: password
|
|
- name: LISTMONK_DB_PASSWORD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: listmonk-secret
|
|
key: db-password
|
|
command:
|
|
- /bin/sh
|
|
- -c
|
|
- |
|
|
psql -h postgres -U postgres <<EOF
|
|
CREATE USER listmonk_user WITH PASSWORD '${LISTMONK_DB_PASSWORD}';
|
|
CREATE DATABASE listmonk_db OWNER listmonk_user;
|
|
EOF
|