mirror of
https://github.com/Dokploy/dokploy
synced 2025-06-26 18:27:59 +00:00
60 lines
1.5 KiB
TypeScript
60 lines
1.5 KiB
TypeScript
import {
|
|
type DomainSchema,
|
|
type Schema,
|
|
type Template,
|
|
generateBase64,
|
|
generatePassword,
|
|
generateRandomDomain,
|
|
} from "../utils";
|
|
|
|
export function generate(schema: Schema): Template {
|
|
const mainDomain = generateRandomDomain(schema);
|
|
const apiKey = generateBase64(64);
|
|
const postgresPassword = generatePassword();
|
|
|
|
const domains: DomainSchema[] = [
|
|
{
|
|
host: mainDomain,
|
|
port: 8080,
|
|
serviceName: "evolution-api",
|
|
},
|
|
];
|
|
|
|
const envs = [
|
|
`SERVER_URL=https://${mainDomain}`,
|
|
"AUTHENTICATION_TYPE=apikey",
|
|
`AUTHENTICATION_API_KEY=${apiKey}`,
|
|
"AUTHENTICATION_EXPOSE_IN_FETCH_INSTANCES=true",
|
|
|
|
"LANGUAGE=en",
|
|
"CONFIG_SESSION_PHONE_CLIENT=Evolution API",
|
|
"CONFIG_SESSION_PHONE_NAME=Chrome",
|
|
"TELEMETRY=false",
|
|
"TELEMETRY_URL=",
|
|
|
|
"POSTGRES_DATABASE=evolution",
|
|
"POSTGRES_USERNAME=postgresql",
|
|
`POSTGRES_PASSWORD=${postgresPassword}`,
|
|
"DATABASE_ENABLED=true",
|
|
"DATABASE_PROVIDER=postgresql",
|
|
`DATABASE_CONNECTION_URI=postgres://postgresql:${postgresPassword}@evolution-postgres:5432/evolution`,
|
|
"DATABASE_SAVE_DATA_INSTANCE=true",
|
|
"DATABASE_SAVE_DATA_NEW_MESSAGE=true",
|
|
"DATABASE_SAVE_MESSAGE_UPDATE=true",
|
|
"DATABASE_SAVE_DATA_CONTACTS=true",
|
|
"DATABASE_SAVE_DATA_CHATS=true",
|
|
"DATABASE_SAVE_DATA_LABELS=true",
|
|
"DATABASE_SAVE_DATA_HISTORIC=true",
|
|
|
|
"CACHE_REDIS_ENABLED=true",
|
|
"CACHE_REDIS_URI=redis://evolution-redis:6379",
|
|
"CACHE_REDIS_PREFIX_KEY=evolution",
|
|
"CACHE_REDIS_SAVE_INSTANCES=true",
|
|
];
|
|
|
|
return {
|
|
domains,
|
|
envs,
|
|
};
|
|
}
|