feat(blueprints): replace unsend with usesend configuration (#350)

* feat(blueprint): added docuseal

* feat: add Docuseal document management system

* feat: restructure docker-compose for Docuseal application setup

* feat(docker-compose): remove unused port mapping and clean up redis service configuration

* Update blueprints/docuseal/docker-compose.yml

* Update blueprints/docuseal/docker-compose.yml

* Update blueprints/docuseal/template.toml

* This PR replaces and supersedes #39.

Changes and improvements:
- Fully resolved merge conflict in meta.json
- Added missing JWT secret handling using `${password:32}`
- Synced `template.toml` and `docker-compose.yml` with proper environment variable mapping
- Ensured domain and service configuration matches Dokploy standards
- Minor cleanup for clarity and deployment safety

Original credit to @maelpr for the initial submission.

This version ensures a clean, deployable, and secure Dokploy template for Kutt.

* fix: add missing commas in environment variable definitions

* Update blueprints/kutt/template.toml

* feat(blueprints): replace unsend with usesend configuration

* feat(meta): add Uptime Kuma monitoring tool to the blueprint

* fix(docker-compose): update MinIO image to latest version

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
This commit is contained in:
Vincent Vu
2025-09-14 14:13:38 +10:00
committed by GitHub
parent bb97aec8ba
commit dd1bc1e8f8
5 changed files with 45 additions and 45 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

View File

@@ -1,14 +1,14 @@
name: unsend-prod
name: usesend-prod
services:
unsend-db-prod:
usesend-db-prod:
image: postgres:16
restart: always
environment:
- POSTGRES_USER=${POSTGRES_USER:?err}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD:?err}
- POSTGRES_DB=${POSTGRES_DB:?err}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=${POSTGRES_DB}
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER}"]
interval: 10s
@@ -19,7 +19,7 @@ services:
volumes:
- database:/var/lib/postgresql/data
unsend-redis-prod:
usesend-redis-prod:
image: redis:7
restart: always
@@ -29,8 +29,8 @@ services:
- cache:/data
command: ["redis-server", "--maxmemory-policy", "noeviction"]
unsend-storage-prod:
image: minio/minio:RELEASE.2024-11-07T00-52-20Z
usesend-storage-prod:
image: minio/minio:latest
ports:
- 9002
@@ -38,33 +38,33 @@ services:
volumes:
- storage:/data
environment:
MINIO_ROOT_USER: unsend
MINIO_ROOT_USER: usesend
MINIO_ROOT_PASSWORD: password
entrypoint: sh
command: -c 'mkdir -p /data/unsend && minio server /data --console-address ":9001" --address ":9002"'
command: -c 'mkdir -p /data/usesend && minio server /data --console-address ":9001" --address ":9002"'
unsend:
image: unsend/unsend:v1.3.2
usesend:
image: usesend/usesend:latest
restart: always
ports:
- ${PORT:-3000}
environment:
- PORT=${PORT:-3000}
- DATABASE_URL=${DATABASE_URL:?err}
- NEXTAUTH_URL=${NEXTAUTH_URL:?err}
- NEXTAUTH_SECRET=${NEXTAUTH_SECRET:?err}
- AWS_ACCESS_KEY=${AWS_ACCESS_KEY:?err}
- AWS_SECRET_KEY=${AWS_SECRET_KEY:?err}
- AWS_DEFAULT_REGION=${AWS_DEFAULT_REGION:?err}
- GITHUB_ID=${GITHUB_ID:?err}
- GITHUB_SECRET=${GITHUB_SECRET:?err}
- REDIS_URL=${REDIS_URL:?err}
- DATABASE_URL=${DATABASE_URL}
- NEXTAUTH_URL=${NEXTAUTH_URL}
- NEXTAUTH_SECRET=${NEXTAUTH_SECRET}
- AWS_DEFAULT_REGION=${AWS_DEFAULT_REGION}
- AWS_SECRET_KEY=${AWS_SECRET_KEY}
- AWS_ACCESS_KEY=${AWS_ACCESS_KEY}
- GITHUB_ID=${GITHUB_ID}
- GITHUB_SECRET=${GITHUB_SECRET}
- REDIS_URL=${REDIS_URL}
- NEXT_PUBLIC_IS_CLOUD=${NEXT_PUBLIC_IS_CLOUD:-false}
- API_RATE_LIMIT=${API_RATE_LIMIT:-1}
depends_on:
unsend-db-prod:
usesend-db-prod:
condition: service_healthy
unsend-redis-prod:
usesend-redis-prod:
condition: service_started
volumes:

View File

@@ -6,16 +6,16 @@ secret_base = "${base64:64}"
mounts = []
[[config.domains]]
serviceName = "unsend"
serviceName = "usesend"
port = 3_000
host = "${main_domain}"
[config.env]
REDIS_URL = "redis://unsend-redis-prod:6379"
REDIS_URL = "redis://usesend-redis-prod:6379"
POSTGRES_USER = "postgres"
POSTGRES_PASSWORD = "postgres"
POSTGRES_DB = "unsend"
DATABASE_URL = "postgresql://postgres:postgres@unsend-db-prod:5432/unsend"
POSTGRES_DB = "usesend"
DATABASE_URL = "postgresql://postgres:postgres@usesend-db-prod:5432/usesend"
NEXTAUTH_URL = "http://localhost:3000"
NEXTAUTH_SECRET = "${secret_base}"
GITHUB_ID = "'Fill'"
@@ -25,4 +25,3 @@ AWS_SECRET_KEY = "'Fill'"
AWS_ACCESS_KEY = "'Fill'"
DOCKER_OUTPUT = "1"
API_RATE_LIMIT = "1"
DISCORD_WEBHOOK_URL = ""

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@@ -4673,23 +4673,6 @@
"networking"
]
},
{
"id": "unsend",
"name": "Unsend",
"version": "v1.3.2",
"description": "Open source alternative to Resend,Sendgrid, Postmark etc. ",
"logo": "unsend.png",
"links": {
"github": "https://github.com/unsend-dev/unsend",
"website": "https://unsend.dev/",
"docs": "https://docs.unsend.dev/get-started/"
},
"tags": [
"e-mail",
"marketing",
"business"
]
},
{
"id": "uptime-kuma",
"name": "Uptime Kuma",
@@ -4705,6 +4688,24 @@
"monitoring"
]
},
{
"id": "usesend",
"name": "useSend",
"version": "latest",
"description": "Open source alternative to Resend, Sendgrid, Postmark etc.",
"logo": "usesend.png",
"links": {
"github": "https://github.com/usesend/usesend",
"website": "https://usesend.com/",
"docs": "https://docs.usesend.com/introduction"
},
"tags": [
"e-mail",
"marketing",
"business",
"self-hosted"
]
},
{
"id": "vaultwarden",
"name": "Vaultwarden",