diff --git a/stacks/productivity/actual/.env b/stacks/productivity/actual/.env new file mode 100644 index 0000000..7ba3eb3 --- /dev/null +++ b/stacks/productivity/actual/.env @@ -0,0 +1,9 @@ +# Exposed HTTP port +HTTP_PORT=5274 + +# System time zone +TZ=Etc/UTC + +# ID's +PUID=1000 +PGID=1000 diff --git a/stacks/productivity/firefly-iii/.env b/stacks/productivity/firefly-iii/.env new file mode 100644 index 0000000..33c7ab6 --- /dev/null +++ b/stacks/productivity/firefly-iii/.env @@ -0,0 +1,14 @@ +# Exposed HTTP port +HTTP_PORT=56678 +DB_PORT=13306 + +# System time zone +TZ=Etc/UTC + +# ID's +PUID=1000 +PGID=1000 + +# Remote user auth (Caddy forward-auth via Authentik) — email-based lookup +AUTHENTICATION_GUARD=remote_user_guard +AUTHENTICATION_GUARD_HEADER=HTTP_X_AUTHENTIK_EMAIL diff --git a/stacks/productivity/firefly-iii/.env.secrets.ctmpl b/stacks/productivity/firefly-iii/.env.secrets.ctmpl new file mode 100644 index 0000000..4852b40 --- /dev/null +++ b/stacks/productivity/firefly-iii/.env.secrets.ctmpl @@ -0,0 +1,4 @@ +APP_KEY={{ with secret "kv/host/fireflyiii" }}{{ .Data.data.app_key }}{{ end }} +DB_PASSWORD={{ with secret "kv/host/fireflyiii" }}{{ .Data.data.db_password }}{{ end }} +MYSQL_PASSWORD={{ with secret "kv/host/fireflyiii" }}{{ .Data.data.db_password }}{{ end }} +MYSQL_ROOT_PASSWORD={{ with secret "kv/host/fireflyiii" }}{{ .Data.data.mysql_root_password }}{{ end }} diff --git a/stacks/productivity/ghost/.env b/stacks/productivity/ghost/.env new file mode 100644 index 0000000..68adde4 --- /dev/null +++ b/stacks/productivity/ghost/.env @@ -0,0 +1,21 @@ +HTTP_PORT=10368 +TZ=Etc/UTC + +GHOST_URL=https://blog.example.com + +UMAMI_IGNORE_IP=203.0.113.1 + +DB_HOST=ghost_db +DB_NAME=ghostdb +DB_USER=ghostuser + +UMAMI_PORT=3050 +UMAMI_DB_NAME=umami +UMAMI_DB_USER=umami + +SMTP_TRANSPORT=SMTP +SMTP_HOST=smtp.example.com +SMTP_PORT=587 +SMTP_SECURE=false + +SMTP_USER=notifications@example.com diff --git a/stacks/productivity/ghost/.env.secrets.ctmpl b/stacks/productivity/ghost/.env.secrets.ctmpl new file mode 100644 index 0000000..78c1c1e --- /dev/null +++ b/stacks/productivity/ghost/.env.secrets.ctmpl @@ -0,0 +1,5 @@ +DB_PASSWORD={{ with secret "kv/host/ghost" }}{{ .Data.data.db_password }}{{ end }} +SMTP_PASSWORD={{ with secret "kv/host/ghost" }}{{ .Data.data.smtp_password }}{{ end }} +MYSQL_ROOT_PASSWORD={{ with secret "kv/host/ghost" }}{{ .Data.data.mysql_root_password }}{{ end }} +UMAMI_APP_SECRET={{ with secret "kv/host/ghost" }}{{ .Data.data.umami_app_secret }}{{ end }} +UMAMI_DB_PASSWORD={{ with secret "kv/host/ghost" }}{{ .Data.data.umami_db_password }}{{ end }} diff --git a/stacks/productivity/home-assistant/.env b/stacks/productivity/home-assistant/.env new file mode 100644 index 0000000..feaf580 --- /dev/null +++ b/stacks/productivity/home-assistant/.env @@ -0,0 +1,13 @@ +# Exposed HTTP port +HTTP_PORT=4719 + +# System time zone +TZ=Etc/UTC + +# ID's +PUID=1000 +PGID=1000 + +POSTGRES_USER=homeassistant_user +# POSTGRES_PASSWORD — see .env.secrets (Vault) +POSTGRES_DB=homeassistant-db diff --git a/stacks/productivity/home-assistant/.env.secrets.ctmpl b/stacks/productivity/home-assistant/.env.secrets.ctmpl new file mode 100644 index 0000000..a12b6f2 --- /dev/null +++ b/stacks/productivity/home-assistant/.env.secrets.ctmpl @@ -0,0 +1 @@ +POSTGRES_PASSWORD={{ with secret "kv/host/home-assistant" }}{{ .Data.data.postgres_password }}{{ end }} diff --git a/stacks/productivity/joplin/.env b/stacks/productivity/joplin/.env new file mode 100644 index 0000000..0c7790b --- /dev/null +++ b/stacks/productivity/joplin/.env @@ -0,0 +1,25 @@ +# Exposed HTTP port +HTTP_PORT=22300 +POSTGRES_PORT=5432 + +# System time zone +TZ=Etc/UTC + +# User Credentials +APP_BASE_URL=https://notes.example.com + +# Admin account seed (only read on a fresh first-ever boot, e.g. after a full recreate) +APP_ADMIN_EMAIL=admin@example.com +APP_ADMIN_NAME=admin + +# SMTP Settings +MAILER_HOST=smtp.example.com +MAILER_PORT=587 +MAILER_SECURITY=1 +MAILER_AUTH_USER=notifications@example.com +MAILER_NOREPLY_NAME=JoplinServer +MAILER_NOREPLY_EMAIL=notifications@example.com + +# Postgres Creds +POSTGRES_USER=postgres +POSTGRES_DB=joplin diff --git a/stacks/productivity/joplin/.env.secrets.ctmpl b/stacks/productivity/joplin/.env.secrets.ctmpl new file mode 100644 index 0000000..b2d880d --- /dev/null +++ b/stacks/productivity/joplin/.env.secrets.ctmpl @@ -0,0 +1,3 @@ +POSTGRES_PASSWORD={{ with secret "kv/host/joplin" }}{{ .Data.data.postgres_password }}{{ end }} +MAILER_AUTH_PASSWORD={{ with secret "kv/host/joplin" }}{{ .Data.data.mailer_auth_password }}{{ end }} +APP_ADMIN_PASSWORD={{ with secret "kv/host/joplin" }}{{ .Data.data.app_admin_password }}{{ end }} diff --git a/stacks/productivity/n8n/.env b/stacks/productivity/n8n/.env new file mode 100644 index 0000000..8cdbaee --- /dev/null +++ b/stacks/productivity/n8n/.env @@ -0,0 +1,15 @@ +# Exposed HTTP port +N8N_PORT=5678 +POSTGRES_PORT=5442 +ADMINER_PORT=8091 +N8N_HOST=n8n.local.example.com + +# System time zone +TZ=Etc/UTC + +# ID's +PUID=1000 +PGID=1000 + +# N8N_POSTGRES_PASSWORD, N8N_BASIC_AUTH_PASSWORD — see .env.secrets (Vault) +N8N_USER=admin diff --git a/stacks/productivity/n8n/.env.secrets.ctmpl b/stacks/productivity/n8n/.env.secrets.ctmpl new file mode 100644 index 0000000..988a58a --- /dev/null +++ b/stacks/productivity/n8n/.env.secrets.ctmpl @@ -0,0 +1,2 @@ +N8N_POSTGRES_PASSWORD={{ with secret "kv/host/n8n" }}{{ .Data.data.postgres_password }}{{ end }} +N8N_BASIC_AUTH_PASSWORD={{ with secret "kv/host/n8n" }}{{ .Data.data.basic_auth_password }}{{ end }} diff --git a/stacks/productivity/nextcloud/.env b/stacks/productivity/nextcloud/.env new file mode 100644 index 0000000..3106069 --- /dev/null +++ b/stacks/productivity/nextcloud/.env @@ -0,0 +1,6 @@ +# mysql credentials +# MYSQL_ROOT_PASSWORD, MYSQL_PASSWORD — see .env.secrets (Vault) +MYSQL_DATABASE=nextcloud +MYSQL_USER=nextcloud + +TZ=Etc/UTC diff --git a/stacks/productivity/nextcloud/.env.secrets.ctmpl b/stacks/productivity/nextcloud/.env.secrets.ctmpl new file mode 100644 index 0000000..e01077e --- /dev/null +++ b/stacks/productivity/nextcloud/.env.secrets.ctmpl @@ -0,0 +1,3 @@ +MYSQL_ROOT_PASSWORD={{ with secret "kv/host/nextcloud-stack" }}{{ .Data.data.mysql_root_password }}{{ end }} +MYSQL_PASSWORD={{ with secret "kv/host/nextcloud-stack" }}{{ .Data.data.mysql_password }}{{ end }} +ONLYOFFICE_JWT_SECRET={{ with secret "kv/host/nextcloud-stack" }}{{ .Data.data.onlyoffice_jwt_secret }}{{ end }} diff --git a/stacks/productivity/paperless-ngx/.env b/stacks/productivity/paperless-ngx/.env new file mode 100644 index 0000000..e69cbbd --- /dev/null +++ b/stacks/productivity/paperless-ngx/.env @@ -0,0 +1,9 @@ +# Exposed HTTP port +HTTP_PORT=8926 + +# Credentials +POSTGRES_DB=paperless +POSTGRES_USER=paperless + +PAPERLESS_ADMIN_USER=admin +PAPERLESS_URL=https://paperless.local.example.com diff --git a/stacks/productivity/paperless-ngx/.env.secrets.ctmpl b/stacks/productivity/paperless-ngx/.env.secrets.ctmpl new file mode 100644 index 0000000..09e69a5 --- /dev/null +++ b/stacks/productivity/paperless-ngx/.env.secrets.ctmpl @@ -0,0 +1,3 @@ +POSTGRES_PASSWORD={{ with secret "kv/host/paperless-ngx" }}{{ .Data.data.postgres_password }}{{ end }} +PAPERLESS_DBPASS={{ with secret "kv/host/paperless-ngx" }}{{ .Data.data.postgres_password }}{{ end }} +PAPERLESS_ADMIN_PASSWORD={{ with secret "kv/host/paperless-ngx" }}{{ .Data.data.admin_password }}{{ end }} diff --git a/stacks/productivity/trilium/.env b/stacks/productivity/trilium/.env new file mode 100644 index 0000000..04e4274 --- /dev/null +++ b/stacks/productivity/trilium/.env @@ -0,0 +1,9 @@ +# Exposed HTTP port +HTTP_PORT=8081 + +# System time zone +TZ=Etc/UTC + +# ID's +PUID=1000 +PGID=1000