mirror of
https://github.com/Dokploy/templates
synced 2025-06-26 18:16:07 +00:00
feat: Add numerous new blueprint templates for various applications
This commit is contained in:
92
blueprints/triggerdotdev/index.ts
Normal file
92
blueprints/triggerdotdev/index.ts
Normal file
@@ -0,0 +1,92 @@
|
||||
import {
|
||||
type DomainSchema,
|
||||
type Schema,
|
||||
type Template,
|
||||
generateBase64,
|
||||
generateRandomDomain,
|
||||
} from "../utils";
|
||||
|
||||
export function generate(schema: Schema): Template {
|
||||
const triggerDomain = generateRandomDomain(schema);
|
||||
|
||||
const magicLinkSecret = generateBase64(16);
|
||||
const sessionSecret = generateBase64(16);
|
||||
const encryptionKey = generateBase64(32);
|
||||
const providerSecret = generateBase64(32);
|
||||
const coordinatorSecret = generateBase64(32);
|
||||
|
||||
const dbPassword = generateBase64(24);
|
||||
const dbUser = "triggeruser";
|
||||
const dbName = "triggerdb";
|
||||
|
||||
const domains: DomainSchema[] = [
|
||||
{
|
||||
host: triggerDomain,
|
||||
port: 3000,
|
||||
serviceName: "webapp",
|
||||
},
|
||||
];
|
||||
|
||||
const envs = [
|
||||
"NODE_ENV=production",
|
||||
"RUNTIME_PLATFORM=docker-compose",
|
||||
"V3_ENABLED=true",
|
||||
|
||||
"# Domain configuration",
|
||||
`TRIGGER_DOMAIN=${triggerDomain}`,
|
||||
"TRIGGER_PROTOCOL=http",
|
||||
|
||||
"# Database configuration with secure credentials",
|
||||
`POSTGRES_USER=${dbUser}`,
|
||||
`POSTGRES_PASSWORD=${dbPassword}`,
|
||||
`POSTGRES_DB=${dbName}`,
|
||||
`DATABASE_URL=postgresql://${dbUser}:${dbPassword}@postgres:5432/${dbName}`,
|
||||
|
||||
"# Secrets",
|
||||
`MAGIC_LINK_SECRET=${magicLinkSecret}`,
|
||||
`SESSION_SECRET=${sessionSecret}`,
|
||||
`ENCRYPTION_KEY=${encryptionKey}`,
|
||||
`PROVIDER_SECRET=${providerSecret}`,
|
||||
`COORDINATOR_SECRET=${coordinatorSecret}`,
|
||||
|
||||
"# TRIGGER_TELEMETRY_DISABLED=1",
|
||||
"INTERNAL_OTEL_TRACE_DISABLED=1",
|
||||
"INTERNAL_OTEL_TRACE_LOGGING_ENABLED=0",
|
||||
|
||||
"DEFAULT_ORG_EXECUTION_CONCURRENCY_LIMIT=300",
|
||||
"DEFAULT_ENV_EXECUTION_CONCURRENCY_LIMIT=100",
|
||||
|
||||
"DIRECT_URL=${DATABASE_URL}",
|
||||
"REDIS_HOST=redis",
|
||||
"REDIS_PORT=6379",
|
||||
"REDIS_TLS_DISABLED=true",
|
||||
|
||||
"# If this is set, emails that are not specified won't be able to log in",
|
||||
'# WHITELISTED_EMAILS="authorized@yahoo.com|authorized@gmail.com"',
|
||||
"# Accounts with these emails will become admins when signing up and get access to the admin panel",
|
||||
'# ADMIN_EMAILS="admin@example.com|another-admin@example.com"',
|
||||
|
||||
"# If this is set, your users will be able to log in via GitHub",
|
||||
"# AUTH_GITHUB_CLIENT_ID=",
|
||||
"# AUTH_GITHUB_CLIENT_SECRET=",
|
||||
|
||||
"# E-mail settings",
|
||||
"# Ensure the FROM_EMAIL matches what you setup with Resend.com",
|
||||
"# If these are not set, emails will be printed to the console",
|
||||
"# FROM_EMAIL=",
|
||||
"# REPLY_TO_EMAIL=",
|
||||
"# RESEND_API_KEY=",
|
||||
|
||||
"# Worker settings",
|
||||
"HTTP_SERVER_PORT=9020",
|
||||
"COORDINATOR_HOST=127.0.0.1",
|
||||
"COORDINATOR_PORT=${HTTP_SERVER_PORT}",
|
||||
"# REGISTRY_HOST=${DEPLOY_REGISTRY_HOST}",
|
||||
"# REGISTRY_NAMESPACE=${DEPLOY_REGISTRY_NAMESPACE}",
|
||||
];
|
||||
|
||||
return {
|
||||
envs,
|
||||
domains,
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user