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:
48
blueprints/typebot/docker-compose.yml
Normal file
48
blueprints/typebot/docker-compose.yml
Normal file
@@ -0,0 +1,48 @@
|
||||
version: '3.3'
|
||||
|
||||
volumes:
|
||||
db-data:
|
||||
|
||||
services:
|
||||
typebot-db:
|
||||
image: postgres:14-alpine
|
||||
restart: always
|
||||
volumes:
|
||||
- db-data:/var/lib/postgresql/data
|
||||
environment:
|
||||
POSTGRES_USER: typebot
|
||||
POSTGRES_DB: typebot
|
||||
POSTGRES_PASSWORD: typebot
|
||||
|
||||
|
||||
typebot-builder:
|
||||
image: baptistearno/typebot-builder:2.27
|
||||
restart: always
|
||||
depends_on:
|
||||
- typebot-db
|
||||
environment:
|
||||
ENCRYPTION_SECRET: '${ENCRYPTION_SECRET}'
|
||||
DATABASE_URL: 'postgresql://typebot:typebot@typebot-db:5432/typebot'
|
||||
NEXTAUTH_URL: '${NEXTAUTH_URL}'
|
||||
NEXT_PUBLIC_VIEWER_URL: '${NEXT_PUBLIC_VIEWER_URL}'
|
||||
ADMIN_EMAIL: '${ADMIN_EMAIL}'
|
||||
SMTP_HOST: '${SMTP_HOST}'
|
||||
NEXT_PUBLIC_SMTP_FROM: '${NEXT_PUBLIC_SMTP_FROM}'
|
||||
SMTP_USERNAME: '${SMTP_USERNAME}'
|
||||
SMTP_PASSWORD: '${SMTP_PASSWORD}'
|
||||
DEFAULT_WORKSPACE_PLAN: '${DEFAULT_WORKSPACE_PLAN}'
|
||||
|
||||
typebot-viewer:
|
||||
image: baptistearno/typebot-viewer:2.27.0
|
||||
restart: always
|
||||
environment:
|
||||
ENCRYPTION_SECRET: '${ENCRYPTION_SECRET}'
|
||||
DATABASE_URL: postgresql://typebot:typebot@typebot-db:5432/typebot
|
||||
NEXTAUTH_URL: '${NEXTAUTH_URL}'
|
||||
NEXT_PUBLIC_VIEWER_URL: '${NEXT_PUBLIC_VIEWER_URL}'
|
||||
ADMIN_EMAIL: '${ADMIN_EMAIL}'
|
||||
SMTP_HOST: '${SMTP_HOST}'
|
||||
NEXT_PUBLIC_SMTP_FROM: '${NEXT_PUBLIC_SMTP_FROM}'
|
||||
SMTP_USERNAME: '${SMTP_USERNAME}'
|
||||
SMTP_PASSWORD: '${SMTP_PASSWORD}'
|
||||
DEFAULT_WORKSPACE_PLAN: '${DEFAULT_WORKSPACE_PLAN}'
|
||||
44
blueprints/typebot/index.ts
Normal file
44
blueprints/typebot/index.ts
Normal file
@@ -0,0 +1,44 @@
|
||||
import {
|
||||
type DomainSchema,
|
||||
type Schema,
|
||||
type Template,
|
||||
generateBase64,
|
||||
generateRandomDomain,
|
||||
} from "../utils";
|
||||
|
||||
export function generate(schema: Schema): Template {
|
||||
const builderDomain = generateRandomDomain(schema);
|
||||
const viewerDomain = generateRandomDomain(schema);
|
||||
const encryptionSecret = generateBase64(24);
|
||||
|
||||
const domains: DomainSchema[] = [
|
||||
{
|
||||
host: builderDomain,
|
||||
port: 3000,
|
||||
serviceName: "typebot-builder",
|
||||
},
|
||||
{
|
||||
host: viewerDomain,
|
||||
port: 3000,
|
||||
serviceName: "typebot-viewer",
|
||||
},
|
||||
];
|
||||
|
||||
const envs = [
|
||||
`ENCRYPTION_SECRET=${encryptionSecret}`,
|
||||
`NEXTAUTH_URL=http://${builderDomain}`,
|
||||
`NEXT_PUBLIC_VIEWER_URL=http://${viewerDomain}`,
|
||||
"ADMIN_EMAIL=typebot@example.com",
|
||||
"SMTP_HOST='Fill'",
|
||||
"SMTP_PORT=25",
|
||||
"SMTP_USERNAME='Fill'",
|
||||
"SMTP_PASSWORD='Fill'",
|
||||
"NEXT_PUBLIC_SMTP_FROM=typebot@example.com",
|
||||
"DEFAULT_WORKSPACE_PLAN=UNLIMITED",
|
||||
];
|
||||
|
||||
return {
|
||||
envs,
|
||||
domains,
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user