mirror of
https://github.com/Dokploy/templates
synced 2025-06-26 18:16:07 +00:00
Merge pull request #49 from Dokploy/feat/reaplce-yaml-with-toml
Feat/reaplce yaml with toml
This commit is contained in:
4
.github/workflows/validate.yml
vendored
4
.github/workflows/validate.yml
vendored
@@ -28,7 +28,7 @@ jobs:
|
||||
TEMPLATE_NAME=$(basename "$dir")
|
||||
|
||||
COMPOSE_FILE="$dir/docker-compose.yml"
|
||||
TEMPLATE_FILE="$dir/template.yml"
|
||||
TEMPLATE_FILE="$dir/template.toml"
|
||||
|
||||
if [ ! -f "$COMPOSE_FILE" ]; then
|
||||
echo "❌ Missing docker-compose.yml in $TEMPLATE_NAME"
|
||||
@@ -36,7 +36,7 @@ jobs:
|
||||
fi
|
||||
|
||||
if [ ! -f "$TEMPLATE_FILE" ]; then
|
||||
echo "❌ Missing template.yml in $TEMPLATE_NAME"
|
||||
echo "❌ Missing template.toml in $TEMPLATE_NAME"
|
||||
ERROR=1
|
||||
fi
|
||||
fi
|
||||
|
||||
58
README.md
58
README.md
@@ -45,7 +45,7 @@ services:
|
||||
volumes:
|
||||
grafana-storage: {}
|
||||
```
|
||||
3. Add the `template.yml` file to the folder, this is where we specify the domains, mounts and env variables, to understand more the structure of `template.yml` you can read here [Template.yml structure](#templateyml-structure)
|
||||
3. Add the `template.toml` file to the folder, this is where we specify the domains, mounts and env variables, to understand more the structure of `template.toml` you can read here [Template.toml structure](#template.toml-structure)
|
||||
|
||||
```yaml
|
||||
variables:
|
||||
@@ -82,48 +82,50 @@ config:
|
||||
6. Commit and push your changes
|
||||
7. Create a pull request
|
||||
|
||||
### Template.yml structure
|
||||
|
||||
Dokploy use a defined structure for the `template.yml` file, we have 4 sections available:
|
||||
### Template.toml structure
|
||||
|
||||
Dokploy use a defined structure for the `template.toml` file, we have 4 sections available:
|
||||
|
||||
1. `variables`: This is where we define the variables that will be used in the `domains`, `env` and `mounts` sections.
|
||||
2. `domains`: This is where we define the configuration for the template.
|
||||
3. `env`: This is where we define the environment variables for the template.
|
||||
4. `mounts`: This is where we define the mounts for the template.
|
||||
|
||||
|
||||
- The `variables(Optional)` structure is the following:
|
||||
|
||||
```yaml
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
my_domain: https://my-domain.com
|
||||
my_password: ${password:32}
|
||||
any_helper: ${you-can-use-any-helper}
|
||||
```toml
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
my_domain = "https://my-domain.com"
|
||||
my_password = "${password:32}"
|
||||
any_helper = "${you-can-use-any-helper}"
|
||||
```
|
||||
|
||||
- The `config` structure is the following:
|
||||
|
||||
```yaml
|
||||
config:
|
||||
domains: # Optional
|
||||
- serviceName: grafana # Required
|
||||
port: 3000 # Required
|
||||
host: ${main_domain} # Required
|
||||
path: / # Optional
|
||||
```toml
|
||||
[config]
|
||||
# Optional sections below
|
||||
|
||||
env: # Optional
|
||||
- AP_HOST=${main_domain}
|
||||
- AP_API_KEY=${api_key}
|
||||
- AP_ENCRYPTION_KEY=${encryption_key}
|
||||
- AP_JWT_SECRET=${jwt_secret}
|
||||
- AP_POSTGRES_PASSWORD=${postgres_password}
|
||||
[[config.domains]]
|
||||
serviceName = "grafana" # Required
|
||||
port = 3000 # Required
|
||||
host = "${main_domain}" # Required
|
||||
path = "/" # Optional
|
||||
|
||||
mounts: # Optional or []
|
||||
- filePath: /content/file.txt
|
||||
content: |
|
||||
My content
|
||||
env = [
|
||||
"AP_HOST=${main_domain}",
|
||||
"AP_API_KEY=${api_key}",
|
||||
"AP_ENCRYPTION_KEY=${encryption_key}",
|
||||
"AP_JWT_SECRET=${jwt_secret}",
|
||||
"AP_POSTGRES_PASSWORD=${postgres_password}"
|
||||
]
|
||||
|
||||
[[config.mounts]]
|
||||
filePath = "/content/file.txt"
|
||||
content = """
|
||||
My content
|
||||
"""
|
||||
```
|
||||
|
||||
Important: you can reference any variable in the `domains`, `env` and `mounts` sections. just use the `${variable_name}` syntax, in the case you don't want to define a variable, you can use the `domain`, `base64`, `password`, `hash`, `uuid`, `randomPort` or `timestamp` helpers.
|
||||
|
||||
@@ -10,6 +10,8 @@
|
||||
"preview": "vite preview"
|
||||
},
|
||||
"dependencies": {
|
||||
"yaml":"2.7.1",
|
||||
"@iarna/toml": "^2.2.5",
|
||||
"@codemirror/autocomplete": "^6.18.6",
|
||||
"@codemirror/lang-json": "^6.0.1",
|
||||
"@codemirror/lang-yaml": "^6.1.1",
|
||||
|
||||
41
app/pnpm-lock.yaml
generated
41
app/pnpm-lock.yaml
generated
@@ -26,6 +26,9 @@ importers:
|
||||
'@codemirror/view':
|
||||
specifier: 6.29.0
|
||||
version: 6.29.0
|
||||
'@iarna/toml':
|
||||
specifier: ^2.2.5
|
||||
version: 2.2.5
|
||||
'@radix-ui/react-dialog':
|
||||
specifier: ^1.1.6
|
||||
version: 1.1.6(@types/react-dom@19.0.4(@types/react@19.0.10))(@types/react@19.0.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
||||
@@ -46,7 +49,7 @@ importers:
|
||||
version: 1.1.3(@types/react-dom@19.0.4(@types/react@19.0.10))(@types/react@19.0.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
||||
'@tailwindcss/vite':
|
||||
specifier: ^4.0.12
|
||||
version: 4.0.12(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2))
|
||||
version: 4.0.12(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1))
|
||||
'@uiw/codemirror-theme-github':
|
||||
specifier: ^4.22.1
|
||||
version: 4.23.10(@codemirror/language@6.10.8)(@codemirror/state@6.5.2)(@codemirror/view@6.29.0)
|
||||
@@ -91,7 +94,10 @@ importers:
|
||||
version: 1.0.7(tailwindcss@4.0.12)
|
||||
vite-plugin-static-copy:
|
||||
specifier: 2.3.0
|
||||
version: 2.3.0(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2))
|
||||
version: 2.3.0(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1))
|
||||
yaml:
|
||||
specifier: 2.7.1
|
||||
version: 2.7.1
|
||||
zustand:
|
||||
specifier: ^5.0.3
|
||||
version: 5.0.3(@types/react@19.0.10)(react@19.0.0)
|
||||
@@ -107,7 +113,7 @@ importers:
|
||||
version: 19.0.4(@types/react@19.0.10)
|
||||
'@vitejs/plugin-react':
|
||||
specifier: ^4.3.4
|
||||
version: 4.3.4(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2))
|
||||
version: 4.3.4(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1))
|
||||
globals:
|
||||
specifier: ^15.15.0
|
||||
version: 15.15.0
|
||||
@@ -116,7 +122,7 @@ importers:
|
||||
version: 5.7.3
|
||||
vite:
|
||||
specifier: ^6.2.0
|
||||
version: 6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)
|
||||
version: 6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1)
|
||||
|
||||
packages:
|
||||
|
||||
@@ -408,6 +414,9 @@ packages:
|
||||
'@floating-ui/utils@0.2.9':
|
||||
resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==}
|
||||
|
||||
'@iarna/toml@2.2.5':
|
||||
resolution: {integrity: sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==}
|
||||
|
||||
'@jridgewell/gen-mapping@0.3.8':
|
||||
resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==}
|
||||
engines: {node: '>=6.0.0'}
|
||||
@@ -1657,6 +1666,11 @@ packages:
|
||||
yallist@3.1.1:
|
||||
resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
|
||||
|
||||
yaml@2.7.1:
|
||||
resolution: {integrity: sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==}
|
||||
engines: {node: '>= 14'}
|
||||
hasBin: true
|
||||
|
||||
zustand@5.0.3:
|
||||
resolution: {integrity: sha512-14fwWQtU3pH4dE0dOpdMiWjddcH+QzKIgk1cl8epwSE7yag43k/AD/m4L6+K7DytAOr9gGBe3/EXj9g7cdostg==}
|
||||
engines: {node: '>=12.20.0'}
|
||||
@@ -1965,6 +1979,8 @@ snapshots:
|
||||
|
||||
'@floating-ui/utils@0.2.9': {}
|
||||
|
||||
'@iarna/toml@2.2.5': {}
|
||||
|
||||
'@jridgewell/gen-mapping@0.3.8':
|
||||
dependencies:
|
||||
'@jridgewell/set-array': 1.2.1
|
||||
@@ -2581,13 +2597,13 @@ snapshots:
|
||||
'@tailwindcss/oxide-win32-arm64-msvc': 4.0.12
|
||||
'@tailwindcss/oxide-win32-x64-msvc': 4.0.12
|
||||
|
||||
'@tailwindcss/vite@4.0.12(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2))':
|
||||
'@tailwindcss/vite@4.0.12(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1))':
|
||||
dependencies:
|
||||
'@tailwindcss/node': 4.0.12
|
||||
'@tailwindcss/oxide': 4.0.12
|
||||
lightningcss: 1.29.2
|
||||
tailwindcss: 4.0.12
|
||||
vite: 6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)
|
||||
vite: 6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1)
|
||||
|
||||
'@types/babel__core@7.20.5':
|
||||
dependencies:
|
||||
@@ -2665,14 +2681,14 @@ snapshots:
|
||||
- '@codemirror/lint'
|
||||
- '@codemirror/search'
|
||||
|
||||
'@vitejs/plugin-react@4.3.4(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2))':
|
||||
'@vitejs/plugin-react@4.3.4(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1))':
|
||||
dependencies:
|
||||
'@babel/core': 7.26.9
|
||||
'@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.9)
|
||||
'@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.9)
|
||||
'@types/babel__core': 7.20.5
|
||||
react-refresh: 0.14.2
|
||||
vite: 6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)
|
||||
vite: 6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
@@ -3087,16 +3103,16 @@ snapshots:
|
||||
optionalDependencies:
|
||||
'@types/react': 19.0.10
|
||||
|
||||
vite-plugin-static-copy@2.3.0(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)):
|
||||
vite-plugin-static-copy@2.3.0(vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1)):
|
||||
dependencies:
|
||||
chokidar: 3.6.0
|
||||
fast-glob: 3.3.3
|
||||
fs-extra: 11.3.0
|
||||
p-map: 7.0.3
|
||||
picocolors: 1.1.1
|
||||
vite: 6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)
|
||||
vite: 6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1)
|
||||
|
||||
vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2):
|
||||
vite@6.2.1(@types/node@20.17.24)(jiti@2.4.2)(lightningcss@1.29.2)(yaml@2.7.1):
|
||||
dependencies:
|
||||
esbuild: 0.25.1
|
||||
postcss: 8.5.3
|
||||
@@ -3106,11 +3122,14 @@ snapshots:
|
||||
fsevents: 2.3.3
|
||||
jiti: 2.4.2
|
||||
lightningcss: 1.29.2
|
||||
yaml: 2.7.1
|
||||
|
||||
w3c-keyname@2.2.8: {}
|
||||
|
||||
yallist@3.1.1: {}
|
||||
|
||||
yaml@2.7.1: {}
|
||||
|
||||
zustand@5.0.3(@types/react@19.0.10)(react@19.0.0):
|
||||
optionalDependencies:
|
||||
'@types/react': 19.0.10
|
||||
|
||||
36
app/script.js
Normal file
36
app/script.js
Normal file
@@ -0,0 +1,36 @@
|
||||
import yaml from "yaml";
|
||||
import toml from "@iarna/toml";
|
||||
import fs from "fs";
|
||||
import path from "path";
|
||||
import { fileURLToPath } from "url";
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = path.dirname(__filename);
|
||||
|
||||
function convertYamlToToml(yamlContent) {
|
||||
const parsedYaml = yaml.parse(yamlContent);
|
||||
return toml.stringify(parsedYaml);
|
||||
}
|
||||
|
||||
function processDirectory(dirPath) {
|
||||
const files = fs.readdirSync(dirPath);
|
||||
|
||||
files.forEach((file) => {
|
||||
const filePath = path.join(dirPath, file);
|
||||
const stat = fs.statSync(filePath);
|
||||
|
||||
if (stat.isDirectory()) {
|
||||
processDirectory(filePath);
|
||||
} else if (file === "template.yml") {
|
||||
console.log(`Converting ${filePath}`);
|
||||
const yamlContent = fs.readFileSync(filePath, "utf8");
|
||||
const tomlContent = convertYamlToToml(yamlContent);
|
||||
const tomlPath = path.join(dirPath, "template.toml");
|
||||
fs.writeFileSync(tomlPath, tomlContent);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// Ruta al directorio blueprints relativa al script
|
||||
const blueprintsPath = path.join(__dirname, "..", "blueprints");
|
||||
processDirectory(blueprintsPath);
|
||||
@@ -228,7 +228,7 @@ const TemplateDialog: React.FC<TemplateDialogProps> = ({
|
||||
<div className="relative w-full rounded-md overflow-hidden border">
|
||||
<CodeEditor
|
||||
value={templateFiles.config || ""}
|
||||
language="yaml"
|
||||
language="toml"
|
||||
className="font-mono w-full [&_*]:!break-words"
|
||||
/>
|
||||
<Button
|
||||
|
||||
@@ -82,7 +82,7 @@ const TemplateGrid: React.FC<TemplateGridProps> = ({ view }) => {
|
||||
try {
|
||||
const [dockerComposeRes, configRes] = await Promise.all([
|
||||
fetch(`/blueprints/${templateId}/docker-compose.yml`),
|
||||
fetch(`/blueprints/${templateId}/template.yml`),
|
||||
fetch(`/blueprints/${templateId}/template.toml`),
|
||||
]);
|
||||
|
||||
const dockerCompose = dockerComposeRes.ok
|
||||
|
||||
@@ -121,7 +121,7 @@ function dockerComposeComplete(
|
||||
interface Props extends ReactCodeMirrorProps {
|
||||
wrapperClassName?: string;
|
||||
disabled?: boolean;
|
||||
language?: "yaml" | "json" | "properties" | "shell";
|
||||
language?: "yaml" | "json" | "properties" | "shell" | "toml";
|
||||
lineWrapping?: boolean;
|
||||
lineNumbers?: boolean;
|
||||
}
|
||||
|
||||
21
blueprints/activepieces/template.toml
Normal file
21
blueprints/activepieces/template.toml
Normal file
@@ -0,0 +1,21 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
api_key = "${password:32}"
|
||||
encryption_key = "${password:32}"
|
||||
jwt_secret = "${password:32}"
|
||||
postgres_password = "${password:32}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"AP_HOST=${main_domain}",
|
||||
"AP_API_KEY=${api_key}",
|
||||
"AP_ENCRYPTION_KEY=${encryption_key}",
|
||||
"AP_JWT_SECRET=${jwt_secret}",
|
||||
"AP_POSTGRES_PASSWORD=${postgres_password}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "activepieces"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
@@ -1,21 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
api_key: ${password:32}
|
||||
encryption_key: ${password:32}
|
||||
jwt_secret: ${password:32}
|
||||
postgres_password: ${password:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: activepieces
|
||||
port: 80
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- AP_HOST=${main_domain}
|
||||
- AP_API_KEY=${api_key}
|
||||
- AP_ENCRYPTION_KEY=${encryption_key}
|
||||
- AP_JWT_SECRET=${jwt_secret}
|
||||
- AP_POSTGRES_PASSWORD=${postgres_password}
|
||||
|
||||
mounts: []
|
||||
11
blueprints/actualbudget/template.toml
Normal file
11
blueprints/actualbudget/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = []
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "actualbudget"
|
||||
port = 5_006
|
||||
host = "${main_domain}"
|
||||
@@ -1,12 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: actualbudget
|
||||
port: 5006
|
||||
host: ${main_domain}
|
||||
|
||||
env: []
|
||||
|
||||
mounts: []
|
||||
11
blueprints/alist/template.toml
Normal file
11
blueprints/alist/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = []
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "alist"
|
||||
port = 5_244
|
||||
host = "${main_domain}"
|
||||
@@ -1,12 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: alist
|
||||
port: 5244
|
||||
host: ${main_domain}
|
||||
|
||||
env: []
|
||||
|
||||
mounts: []
|
||||
12
blueprints/answer/template.toml
Normal file
12
blueprints/answer/template.toml
Normal file
@@ -0,0 +1,12 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
service_hash = "${hash:32}"
|
||||
|
||||
[config]
|
||||
env = ["ANSWER_HOST=http://${main_domain}", "SERVICE_HASH=${service_hash}"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "answer"
|
||||
port = 9_080
|
||||
host = "${main_domain}"
|
||||
@@ -1,15 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
service_hash: ${hash:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: answer
|
||||
port: 9080
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- ANSWER_HOST=http://${main_domain}
|
||||
- SERVICE_HASH=${service_hash}
|
||||
|
||||
mounts: []
|
||||
11
blueprints/appsmith/template.toml
Normal file
11
blueprints/appsmith/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = []
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "appsmith"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
@@ -1,12 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: appsmith
|
||||
port: 80
|
||||
host: ${main_domain}
|
||||
|
||||
env: []
|
||||
|
||||
mounts: []
|
||||
143
blueprints/appwrite/template.toml
Normal file
143
blueprints/appwrite/template.toml
Normal file
@@ -0,0 +1,143 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"_APP_ENV=production",
|
||||
"_APP_LOCALE=en",
|
||||
"_APP_OPTIONS_ABUSE=enabled",
|
||||
"_APP_OPTIONS_FORCE_HTTPS=disabled",
|
||||
"_APP_OPTIONS_FUNCTIONS_FORCE_HTTPS=disabled",
|
||||
"_APP_OPTIONS_ROUTER_PROTECTION=disabled",
|
||||
"_APP_OPENSSL_KEY_V1=your-secret-key",
|
||||
"_APP_DOMAIN=${main_domain}",
|
||||
"_APP_DOMAIN_FUNCTIONS=${main_domain}",
|
||||
"_APP_DOMAIN_TARGET=${main_domain}",
|
||||
"_APP_CONSOLE_WHITELIST_ROOT=enabled",
|
||||
"_APP_CONSOLE_WHITELIST_EMAILS=",
|
||||
"_APP_CONSOLE_WHITELIST_IPS=",
|
||||
"_APP_CONSOLE_HOSTNAMES=",
|
||||
"_APP_SYSTEM_EMAIL_NAME=Appwrite",
|
||||
"_APP_SYSTEM_EMAIL_ADDRESS=noreply@appwrite.io",
|
||||
"_APP_SYSTEM_TEAM_EMAIL=team@appwrite.io",
|
||||
"_APP_SYSTEM_RESPONSE_FORMAT=",
|
||||
"_APP_SYSTEM_SECURITY_EMAIL_ADDRESS=certs@appwrite.io",
|
||||
"_APP_EMAIL_SECURITY=",
|
||||
"_APP_EMAIL_CERTIFICATES=",
|
||||
"_APP_USAGE_STATS=enabled",
|
||||
"_APP_LOGGING_PROVIDER=",
|
||||
"_APP_LOGGING_CONFIG=",
|
||||
"_APP_USAGE_AGGREGATION_INTERVAL=30",
|
||||
"_APP_USAGE_TIMESERIES_INTERVAL=30",
|
||||
"_APP_USAGE_DATABASE_INTERVAL=900",
|
||||
"_APP_WORKER_PER_CORE=6",
|
||||
"_APP_CONSOLE_SESSION_ALERTS=disabled",
|
||||
"_APP_REDIS_HOST=redis",
|
||||
"_APP_REDIS_PORT=6379",
|
||||
"_APP_REDIS_USER=",
|
||||
"_APP_REDIS_PASS=",
|
||||
"_APP_DB_HOST=mariadb",
|
||||
"_APP_DB_PORT=3306",
|
||||
"_APP_DB_SCHEMA=appwrite",
|
||||
"_APP_DB_USER=user",
|
||||
"_APP_DB_PASS=password",
|
||||
"_APP_DB_ROOT_PASS=rootsecretpassword",
|
||||
"_APP_INFLUXDB_HOST=influxdb",
|
||||
"_APP_INFLUXDB_PORT=8086",
|
||||
"_APP_STATSD_HOST=telegraf",
|
||||
"_APP_STATSD_PORT=8125",
|
||||
"_APP_SMTP_HOST=",
|
||||
"_APP_SMTP_PORT=",
|
||||
"_APP_SMTP_SECURE=",
|
||||
"_APP_SMTP_USERNAME=",
|
||||
"_APP_SMTP_PASSWORD=",
|
||||
"_APP_SMS_PROVIDER=",
|
||||
"_APP_SMS_FROM=",
|
||||
"_APP_STORAGE_LIMIT=30000000",
|
||||
"_APP_STORAGE_PREVIEW_LIMIT=20000000",
|
||||
"_APP_STORAGE_ANTIVIRUS=disabled",
|
||||
"_APP_STORAGE_ANTIVIRUS_HOST=clamav",
|
||||
"_APP_STORAGE_ANTIVIRUS_PORT=3310",
|
||||
"_APP_STORAGE_DEVICE=local",
|
||||
"_APP_STORAGE_S3_ACCESS_KEY=",
|
||||
"_APP_STORAGE_S3_SECRET=",
|
||||
"_APP_STORAGE_S3_REGION=us-east-1",
|
||||
"_APP_STORAGE_S3_BUCKET=",
|
||||
"_APP_STORAGE_DO_SPACES_ACCESS_KEY=",
|
||||
"_APP_STORAGE_DO_SPACES_SECRET=",
|
||||
"_APP_STORAGE_DO_SPACES_REGION=us-east-1",
|
||||
"_APP_STORAGE_DO_SPACES_BUCKET=",
|
||||
"_APP_STORAGE_BACKBLAZE_ACCESS_KEY=",
|
||||
"_APP_STORAGE_BACKBLAZE_SECRET=",
|
||||
"_APP_STORAGE_BACKBLAZE_REGION=us-west-004",
|
||||
"_APP_STORAGE_BACKBLAZE_BUCKET=",
|
||||
"_APP_STORAGE_LINODE_ACCESS_KEY=",
|
||||
"_APP_STORAGE_LINODE_SECRET=",
|
||||
"_APP_STORAGE_LINODE_REGION=eu-central-1",
|
||||
"_APP_STORAGE_LINODE_BUCKET=",
|
||||
"_APP_STORAGE_WASABI_ACCESS_KEY=",
|
||||
"_APP_STORAGE_WASABI_SECRET=",
|
||||
"_APP_STORAGE_WASABI_REGION=eu-central-1",
|
||||
"_APP_STORAGE_WASABI_BUCKET=",
|
||||
"_APP_FUNCTIONS_SIZE_LIMIT=30000000",
|
||||
"_APP_FUNCTIONS_BUILD_SIZE_LIMIT=2000000000",
|
||||
"_APP_FUNCTIONS_TIMEOUT=900",
|
||||
"_APP_FUNCTIONS_BUILD_TIMEOUT=900",
|
||||
"_APP_FUNCTIONS_CONTAINERS=10",
|
||||
"_APP_FUNCTIONS_CPUS=0",
|
||||
"_APP_FUNCTIONS_MEMORY=0",
|
||||
"_APP_FUNCTIONS_MEMORY_SWAP=0",
|
||||
"_APP_FUNCTIONS_RUNTIMES=node-16.0,php-8.0,python-3.9,ruby-3.0",
|
||||
"_APP_EXECUTOR_SECRET=your-secret-key",
|
||||
"_APP_EXECUTOR_HOST=http://exc1/v1",
|
||||
"_APP_EXECUTOR_RUNTIME_NETWORK=appwrite_runtimes",
|
||||
"_APP_FUNCTIONS_ENVS=node-16.0,php-7.4,python-3.9,ruby-3.0",
|
||||
"_APP_FUNCTIONS_INACTIVE_THRESHOLD=60",
|
||||
"DOCKERHUB_PULL_USERNAME=",
|
||||
"DOCKERHUB_PULL_PASSWORD=",
|
||||
"DOCKERHUB_PULL_EMAIL=",
|
||||
"OPEN_RUNTIMES_NETWORK=appwrite_runtimes",
|
||||
"_APP_FUNCTIONS_RUNTIMES_NETWORK=runtimes",
|
||||
"_APP_DOCKER_HUB_USERNAME=",
|
||||
"_APP_DOCKER_HUB_PASSWORD=",
|
||||
"_APP_FUNCTIONS_MAINTENANCE_INTERVAL=3600",
|
||||
"_APP_VCS_GITHUB_APP_NAME=",
|
||||
"_APP_VCS_GITHUB_PRIVATE_KEY=",
|
||||
"_APP_VCS_GITHUB_APP_ID=",
|
||||
"_APP_VCS_GITHUB_CLIENT_ID=",
|
||||
"_APP_VCS_GITHUB_CLIENT_SECRET=",
|
||||
"_APP_VCS_GITHUB_WEBHOOK_SECRET=",
|
||||
"_APP_MAINTENANCE_INTERVAL=86400",
|
||||
"_APP_MAINTENANCE_DELAY=0",
|
||||
"_APP_MAINTENANCE_RETENTION_CACHE=2592000",
|
||||
"_APP_MAINTENANCE_RETENTION_EXECUTION=1209600",
|
||||
"_APP_MAINTENANCE_RETENTION_AUDIT=1209600",
|
||||
"_APP_MAINTENANCE_RETENTION_ABUSE=86400",
|
||||
"_APP_MAINTENANCE_RETENTION_USAGE_HOURLY=8640000",
|
||||
"_APP_MAINTENANCE_RETENTION_SCHEDULES=86400",
|
||||
"_APP_GRAPHQL_MAX_BATCH_SIZE=10",
|
||||
"_APP_GRAPHQL_MAX_COMPLEXITY=250",
|
||||
"_APP_GRAPHQL_MAX_DEPTH=3",
|
||||
"_APP_MIGRATIONS_FIREBASE_CLIENT_ID=",
|
||||
"_APP_MIGRATIONS_FIREBASE_CLIENT_SECRET=",
|
||||
"_APP_ASSISTANT_OPENAI_API_KEY=",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "appwrite"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
path = "/"
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "appwrite-console"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
path = "/console"
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "appwrite-realtime"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
path = "/v1/realtime"
|
||||
@@ -1,139 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: appwrite
|
||||
port: 80
|
||||
host: ${main_domain}
|
||||
path: /
|
||||
- serviceName: appwrite-console
|
||||
port: 80
|
||||
host: ${main_domain}
|
||||
path: /console
|
||||
- serviceName: appwrite-realtime
|
||||
port: 80
|
||||
host: ${main_domain}
|
||||
path: /v1/realtime
|
||||
|
||||
env:
|
||||
- _APP_ENV=production
|
||||
- _APP_LOCALE=en
|
||||
- _APP_OPTIONS_ABUSE=enabled
|
||||
- _APP_OPTIONS_FORCE_HTTPS=disabled
|
||||
- _APP_OPTIONS_FUNCTIONS_FORCE_HTTPS=disabled
|
||||
- _APP_OPTIONS_ROUTER_PROTECTION=disabled
|
||||
- _APP_OPENSSL_KEY_V1=your-secret-key
|
||||
- _APP_DOMAIN=${main_domain}
|
||||
- _APP_DOMAIN_FUNCTIONS=${main_domain}
|
||||
- _APP_DOMAIN_TARGET=${main_domain}
|
||||
- _APP_CONSOLE_WHITELIST_ROOT=enabled
|
||||
- _APP_CONSOLE_WHITELIST_EMAILS=
|
||||
- _APP_CONSOLE_WHITELIST_IPS=
|
||||
- _APP_CONSOLE_HOSTNAMES=
|
||||
- _APP_SYSTEM_EMAIL_NAME=Appwrite
|
||||
- _APP_SYSTEM_EMAIL_ADDRESS=noreply@appwrite.io
|
||||
- _APP_SYSTEM_TEAM_EMAIL=team@appwrite.io
|
||||
- _APP_SYSTEM_RESPONSE_FORMAT=
|
||||
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS=certs@appwrite.io
|
||||
- _APP_EMAIL_SECURITY=
|
||||
- _APP_EMAIL_CERTIFICATES=
|
||||
- _APP_USAGE_STATS=enabled
|
||||
- _APP_LOGGING_PROVIDER=
|
||||
- _APP_LOGGING_CONFIG=
|
||||
- _APP_USAGE_AGGREGATION_INTERVAL=30
|
||||
- _APP_USAGE_TIMESERIES_INTERVAL=30
|
||||
- _APP_USAGE_DATABASE_INTERVAL=900
|
||||
- _APP_WORKER_PER_CORE=6
|
||||
- _APP_CONSOLE_SESSION_ALERTS=disabled
|
||||
- _APP_REDIS_HOST=redis
|
||||
- _APP_REDIS_PORT=6379
|
||||
- _APP_REDIS_USER=
|
||||
- _APP_REDIS_PASS=
|
||||
- _APP_DB_HOST=mariadb
|
||||
- _APP_DB_PORT=3306
|
||||
- _APP_DB_SCHEMA=appwrite
|
||||
- _APP_DB_USER=user
|
||||
- _APP_DB_PASS=password
|
||||
- _APP_DB_ROOT_PASS=rootsecretpassword
|
||||
- _APP_INFLUXDB_HOST=influxdb
|
||||
- _APP_INFLUXDB_PORT=8086
|
||||
- _APP_STATSD_HOST=telegraf
|
||||
- _APP_STATSD_PORT=8125
|
||||
- _APP_SMTP_HOST=
|
||||
- _APP_SMTP_PORT=
|
||||
- _APP_SMTP_SECURE=
|
||||
- _APP_SMTP_USERNAME=
|
||||
- _APP_SMTP_PASSWORD=
|
||||
- _APP_SMS_PROVIDER=
|
||||
- _APP_SMS_FROM=
|
||||
- _APP_STORAGE_LIMIT=30000000
|
||||
- _APP_STORAGE_PREVIEW_LIMIT=20000000
|
||||
- _APP_STORAGE_ANTIVIRUS=disabled
|
||||
- _APP_STORAGE_ANTIVIRUS_HOST=clamav
|
||||
- _APP_STORAGE_ANTIVIRUS_PORT=3310
|
||||
- _APP_STORAGE_DEVICE=local
|
||||
- _APP_STORAGE_S3_ACCESS_KEY=
|
||||
- _APP_STORAGE_S3_SECRET=
|
||||
- _APP_STORAGE_S3_REGION=us-east-1
|
||||
- _APP_STORAGE_S3_BUCKET=
|
||||
- _APP_STORAGE_DO_SPACES_ACCESS_KEY=
|
||||
- _APP_STORAGE_DO_SPACES_SECRET=
|
||||
- _APP_STORAGE_DO_SPACES_REGION=us-east-1
|
||||
- _APP_STORAGE_DO_SPACES_BUCKET=
|
||||
- _APP_STORAGE_BACKBLAZE_ACCESS_KEY=
|
||||
- _APP_STORAGE_BACKBLAZE_SECRET=
|
||||
- _APP_STORAGE_BACKBLAZE_REGION=us-west-004
|
||||
- _APP_STORAGE_BACKBLAZE_BUCKET=
|
||||
- _APP_STORAGE_LINODE_ACCESS_KEY=
|
||||
- _APP_STORAGE_LINODE_SECRET=
|
||||
- _APP_STORAGE_LINODE_REGION=eu-central-1
|
||||
- _APP_STORAGE_LINODE_BUCKET=
|
||||
- _APP_STORAGE_WASABI_ACCESS_KEY=
|
||||
- _APP_STORAGE_WASABI_SECRET=
|
||||
- _APP_STORAGE_WASABI_REGION=eu-central-1
|
||||
- _APP_STORAGE_WASABI_BUCKET=
|
||||
- _APP_FUNCTIONS_SIZE_LIMIT=30000000
|
||||
- _APP_FUNCTIONS_BUILD_SIZE_LIMIT=2000000000
|
||||
- _APP_FUNCTIONS_TIMEOUT=900
|
||||
- _APP_FUNCTIONS_BUILD_TIMEOUT=900
|
||||
- _APP_FUNCTIONS_CONTAINERS=10
|
||||
- _APP_FUNCTIONS_CPUS=0
|
||||
- _APP_FUNCTIONS_MEMORY=0
|
||||
- _APP_FUNCTIONS_MEMORY_SWAP=0
|
||||
- _APP_FUNCTIONS_RUNTIMES=node-16.0,php-8.0,python-3.9,ruby-3.0
|
||||
- _APP_EXECUTOR_SECRET=your-secret-key
|
||||
- _APP_EXECUTOR_HOST=http://exc1/v1
|
||||
- _APP_EXECUTOR_RUNTIME_NETWORK=appwrite_runtimes
|
||||
- _APP_FUNCTIONS_ENVS=node-16.0,php-7.4,python-3.9,ruby-3.0
|
||||
- _APP_FUNCTIONS_INACTIVE_THRESHOLD=60
|
||||
- DOCKERHUB_PULL_USERNAME=
|
||||
- DOCKERHUB_PULL_PASSWORD=
|
||||
- DOCKERHUB_PULL_EMAIL=
|
||||
- OPEN_RUNTIMES_NETWORK=appwrite_runtimes
|
||||
- _APP_FUNCTIONS_RUNTIMES_NETWORK=runtimes
|
||||
- _APP_DOCKER_HUB_USERNAME=
|
||||
- _APP_DOCKER_HUB_PASSWORD=
|
||||
- _APP_FUNCTIONS_MAINTENANCE_INTERVAL=3600
|
||||
- _APP_VCS_GITHUB_APP_NAME=
|
||||
- _APP_VCS_GITHUB_PRIVATE_KEY=
|
||||
- _APP_VCS_GITHUB_APP_ID=
|
||||
- _APP_VCS_GITHUB_CLIENT_ID=
|
||||
- _APP_VCS_GITHUB_CLIENT_SECRET=
|
||||
- _APP_VCS_GITHUB_WEBHOOK_SECRET=
|
||||
- _APP_MAINTENANCE_INTERVAL=86400
|
||||
- _APP_MAINTENANCE_DELAY=0
|
||||
- _APP_MAINTENANCE_RETENTION_CACHE=2592000
|
||||
- _APP_MAINTENANCE_RETENTION_EXECUTION=1209600
|
||||
- _APP_MAINTENANCE_RETENTION_AUDIT=1209600
|
||||
- _APP_MAINTENANCE_RETENTION_ABUSE=86400
|
||||
- _APP_MAINTENANCE_RETENTION_USAGE_HOURLY=8640000
|
||||
- _APP_MAINTENANCE_RETENTION_SCHEDULES=86400
|
||||
- _APP_GRAPHQL_MAX_BATCH_SIZE=10
|
||||
- _APP_GRAPHQL_MAX_COMPLEXITY=250
|
||||
- _APP_GRAPHQL_MAX_DEPTH=3
|
||||
- _APP_MIGRATIONS_FIREBASE_CLIENT_ID=
|
||||
- _APP_MIGRATIONS_FIREBASE_CLIENT_SECRET=
|
||||
- _APP_ASSISTANT_OPENAI_API_KEY=
|
||||
|
||||
mounts: []
|
||||
12
blueprints/aptabase/template.toml
Normal file
12
blueprints/aptabase/template.toml
Normal file
@@ -0,0 +1,12 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
auth_secret = "${base64:32}"
|
||||
|
||||
[config]
|
||||
env = ["APTABASE_HOST=${main_domain}", "AUTH_SECRET=${auth_secret}"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "aptabase"
|
||||
port = 8_080
|
||||
host = "${main_domain}"
|
||||
@@ -1,15 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
auth_secret: ${base64:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: aptabase
|
||||
port: 8080
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- APTABASE_HOST=${main_domain}
|
||||
- AUTH_SECRET=${auth_secret}
|
||||
|
||||
mounts: []
|
||||
11
blueprints/backrest/template.toml
Normal file
11
blueprints/backrest/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = ["TZ=Europe/Paris"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "backrest"
|
||||
port = 9_898
|
||||
host = "${main_domain}"
|
||||
11
blueprints/baserow/template.toml
Normal file
11
blueprints/baserow/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = ["BASEROW_HOST=${main_domain}"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "baserow"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
@@ -1,13 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: baserow
|
||||
port: 80
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- BASEROW_HOST=${main_domain}
|
||||
|
||||
mounts: []
|
||||
18
blueprints/blender/template.toml
Normal file
18
blueprints/blender/template.toml
Normal file
@@ -0,0 +1,18 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"PUID=1000",
|
||||
"PGID=1000",
|
||||
"TZ=Etc/UTC",
|
||||
"SUBFOLDER=/",
|
||||
"NVIDIA_VISIBLE_DEVICES=all",
|
||||
"NVIDIA_DRIVER_CAPABILITIES=all",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "blender"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,18 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: blender
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
- SUBFOLDER=/
|
||||
- NVIDIA_VISIBLE_DEVICES=all
|
||||
- NVIDIA_DRIVER_CAPABILITIES=all
|
||||
|
||||
mounts: []
|
||||
20
blueprints/blinko/template.toml
Normal file
20
blueprints/blinko/template.toml
Normal file
@@ -0,0 +1,20 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
postgres_password = "${password:16}"
|
||||
nextauth_secret = "${password:32}"
|
||||
nextauth_url = "http://${main_domain}"
|
||||
next_public_base_url = "http://${main_domain}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"nextauth_secret=${nextauth_secret}",
|
||||
"postgres_password=${postgres_password}",
|
||||
"nextauth_url=${nextauth_url}",
|
||||
"next_public_base_url=${next_public_base_url}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "blinko-website"
|
||||
port = 1_111
|
||||
host = "${main_domain}"
|
||||
15
blueprints/browserless/template.toml
Normal file
15
blueprints/browserless/template.toml
Normal file
@@ -0,0 +1,15 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
browserless_token = "${password:16}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"BROWERLESS_HOST=${main_domain}",
|
||||
"BROWSERLESS_TOKEN=${browserless_token}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "browserless"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,15 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
browserless_token: ${password:16}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: browserless
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- BROWERLESS_HOST=${main_domain}
|
||||
- BROWSERLESS_TOKEN=${browserless_token}
|
||||
|
||||
mounts: []
|
||||
29
blueprints/budibase/template.toml
Normal file
29
blueprints/budibase/template.toml
Normal file
@@ -0,0 +1,29 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
api_key = "${password:32}"
|
||||
encryption_key = "${password:32}"
|
||||
jwt_secret = "${password:32}"
|
||||
couchdb_password = "${password:32}"
|
||||
redis_password = "${password:32}"
|
||||
minio_access_key = "${password:32}"
|
||||
minio_secret_key = "${password:32}"
|
||||
watchtower_password = "${password:32}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"BB_HOST=${main_domain}",
|
||||
"BB_INTERNAL_API_KEY=${api_key}",
|
||||
"BB_API_ENCRYPTION_KEY=${encryption_key}",
|
||||
"BB_JWT_SECRET=${jwt_secret}",
|
||||
"BB_COUCHDB_PASSWORD=${couchdb_password}",
|
||||
"BB_REDIS_PASSWORD=${redis_password}",
|
||||
"BB_WATCHTOWER_PASSWORD=${watchtower_password}",
|
||||
"BB_MINIO_ACCESS_KEY=${minio_access_key}",
|
||||
"BB_MINIO_SECRET_KEY=${minio_secret_key}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "proxy"
|
||||
port = 10_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,29 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
api_key: ${password:32}
|
||||
encryption_key: ${password:32}
|
||||
jwt_secret: ${password:32}
|
||||
couchdb_password: ${password:32}
|
||||
redis_password: ${password:32}
|
||||
minio_access_key: ${password:32}
|
||||
minio_secret_key: ${password:32}
|
||||
watchtower_password: ${password:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: proxy
|
||||
port: 10000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- BB_HOST=${main_domain}
|
||||
- BB_INTERNAL_API_KEY=${api_key}
|
||||
- BB_API_ENCRYPTION_KEY=${encryption_key}
|
||||
- BB_JWT_SECRET=${jwt_secret}
|
||||
- BB_COUCHDB_PASSWORD=${couchdb_password}
|
||||
- BB_REDIS_PASSWORD=${redis_password}
|
||||
- BB_WATCHTOWER_PASSWORD=${watchtower_password}
|
||||
- BB_MINIO_ACCESS_KEY=${minio_access_key}
|
||||
- BB_MINIO_SECRET_KEY=${minio_secret_key}
|
||||
|
||||
mounts: []
|
||||
17
blueprints/calcom/template.toml
Normal file
17
blueprints/calcom/template.toml
Normal file
@@ -0,0 +1,17 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
calcom_encryption_key = "${base64:32}"
|
||||
nextauth_secret = "${base64:32}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"CALCOM_HOST=${main_domain}",
|
||||
"NEXTAUTH_SECRET=${nextauth_secret}",
|
||||
"CALENDSO_ENCRYPTION_KEY=${calcom_encryption_key}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "calcom"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,17 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
calcom_encryption_key: ${base64:32}
|
||||
nextauth_secret: ${base64:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: calcom
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- CALCOM_HOST=${main_domain}
|
||||
- NEXTAUTH_SECRET=${nextauth_secret}
|
||||
- CALENDSO_ENCRYPTION_KEY=${calcom_encryption_key}
|
||||
|
||||
mounts: []
|
||||
30
blueprints/chatwoot/template.toml
Normal file
30
blueprints/chatwoot/template.toml
Normal file
@@ -0,0 +1,30 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
secret_key_base = "${base64:64}"
|
||||
postgres_password = "${password}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"FRONTEND_URL=http://${main_domain}",
|
||||
"SECRET_KEY_BASE=${secret_key_base}",
|
||||
"RAILS_ENV=production",
|
||||
"NODE_ENV=production",
|
||||
"INSTALLATION_ENV=docker",
|
||||
"RAILS_LOG_TO_STDOUT=true",
|
||||
"LOG_LEVEL=info",
|
||||
"DEFAULT_LOCALE=en",
|
||||
"POSTGRES_HOST=chatwoot-postgres",
|
||||
"POSTGRES_PORT=5432",
|
||||
"POSTGRES_DATABASE=chatwoot",
|
||||
"POSTGRES_USERNAME=postgres",
|
||||
"POSTGRES_PASSWORD=${postgres_password}",
|
||||
"REDIS_URL=redis://chatwoot-redis:6379",
|
||||
"ENABLE_ACCOUNT_SIGNUP=false",
|
||||
"ACTIVE_STORAGE_SERVICE=local",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "chatwoot-rails"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,30 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
secret_key_base: ${base64:64}
|
||||
postgres_password: ${password}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: chatwoot-rails
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- FRONTEND_URL=http://${main_domain}
|
||||
- SECRET_KEY_BASE=${secret_key_base}
|
||||
- RAILS_ENV=production
|
||||
- NODE_ENV=production
|
||||
- INSTALLATION_ENV=docker
|
||||
- RAILS_LOG_TO_STDOUT=true
|
||||
- LOG_LEVEL=info
|
||||
- DEFAULT_LOCALE=en
|
||||
- POSTGRES_HOST=chatwoot-postgres
|
||||
- POSTGRES_PORT=5432
|
||||
- POSTGRES_DATABASE=chatwoot
|
||||
- POSTGRES_USERNAME=postgres
|
||||
- POSTGRES_PASSWORD=${postgres_password}
|
||||
- REDIS_URL=redis://chatwoot-redis:6379
|
||||
- ENABLE_ACCOUNT_SIGNUP=false
|
||||
- ACTIVE_STORAGE_SERVICE=local
|
||||
|
||||
mounts: []
|
||||
11
blueprints/checkmate/template.toml
Normal file
11
blueprints/checkmate/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = ["DOMAIN=${main_domain}"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "client"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
@@ -1,13 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: client
|
||||
port: 80
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- DOMAIN=${main_domain}
|
||||
|
||||
mounts: []
|
||||
6
blueprints/cloudflared/template.toml
Normal file
6
blueprints/cloudflared/template.toml
Normal file
@@ -0,0 +1,6 @@
|
||||
variables = {}
|
||||
|
||||
[config]
|
||||
domains = []
|
||||
env = ["CLOUDFLARE_TUNNEL_TOKEN=\"<INSERT TOKEN>\""]
|
||||
mounts = []
|
||||
@@ -1,9 +0,0 @@
|
||||
variables: {}
|
||||
|
||||
config:
|
||||
domains: []
|
||||
|
||||
env:
|
||||
- CLOUDFLARE_TUNNEL_TOKEN="<INSERT TOKEN>"
|
||||
|
||||
mounts: []
|
||||
18
blueprints/coder/template.toml
Normal file
18
blueprints/coder/template.toml
Normal file
@@ -0,0 +1,18 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
postgres_password = "${password}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"CODER_ACCESS_URL=",
|
||||
"CODER_HTTP_ADDRESS=0.0.0.0:7080",
|
||||
"POSTGRES_DB=coder",
|
||||
"POSTGRES_USER=coder",
|
||||
"POSTGRES_PASSWORD=${postgres_password}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "coder"
|
||||
port = 7_080
|
||||
host = "${main_domain}"
|
||||
@@ -1,18 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
postgres_password: ${password}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: coder
|
||||
port: 7080
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- CODER_ACCESS_URL=
|
||||
- CODER_HTTP_ADDRESS=0.0.0.0:7080
|
||||
- POSTGRES_DB=coder
|
||||
- POSTGRES_USER=coder
|
||||
- POSTGRES_PASSWORD=${postgres_password}
|
||||
|
||||
mounts: []
|
||||
11
blueprints/conduit/template.toml
Normal file
11
blueprints/conduit/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = ["MATRIX_SUBDOMAIN=${main_domain}"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "homeserver"
|
||||
port = 6_167
|
||||
host = "${main_domain}"
|
||||
@@ -1,13 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: homeserver
|
||||
port: 6167
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- MATRIX_SUBDOMAIN=${main_domain}
|
||||
|
||||
mounts: []
|
||||
15
blueprints/conduwuit/template.toml
Normal file
15
blueprints/conduwuit/template.toml
Normal file
@@ -0,0 +1,15 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
registration_token = "${password:20}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"CONDUWUIT_SERVER_NAME=${main_domain}",
|
||||
"CONDUWUIT_REGISTRATION_TOKEN=${registration_token}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "homeserver"
|
||||
port = 6_167
|
||||
host = "${main_domain}"
|
||||
@@ -1,15 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
registration_token: ${password:20}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: homeserver
|
||||
port: 6167
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- CONDUWUIT_SERVER_NAME=${main_domain}
|
||||
- CONDUWUIT_REGISTRATION_TOKEN=${registration_token}
|
||||
|
||||
mounts: []
|
||||
27
blueprints/convex/template.toml
Normal file
27
blueprints/convex/template.toml
Normal file
@@ -0,0 +1,27 @@
|
||||
[variables]
|
||||
dashboard_domain = "${domain}"
|
||||
backend_domain = "${domain}"
|
||||
actions_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"NEXT_PUBLIC_DEPLOYMENT_URL=http://${backend_domain}",
|
||||
"CONVEX_CLOUD_ORIGIN=http://${backend_domain}",
|
||||
"CONVEX_SITE_ORIGIN=http://${actions_domain}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "dashboard"
|
||||
port = 6_791
|
||||
host = "${dashboard_domain}"
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "backend"
|
||||
port = 3_210
|
||||
host = "${backend_domain}"
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "backend"
|
||||
port = 3_211
|
||||
host = "${actions_domain}"
|
||||
@@ -1,23 +0,0 @@
|
||||
variables:
|
||||
dashboard_domain: ${domain}
|
||||
backend_domain: ${domain}
|
||||
actions_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: dashboard
|
||||
port: 6791
|
||||
host: ${dashboard_domain}
|
||||
- serviceName: backend
|
||||
port: 3210
|
||||
host: ${backend_domain}
|
||||
- serviceName: backend
|
||||
port: 3211
|
||||
host: ${actions_domain}
|
||||
|
||||
env:
|
||||
- NEXT_PUBLIC_DEPLOYMENT_URL=http://${backend_domain}
|
||||
- CONVEX_CLOUD_ORIGIN=http://${backend_domain}
|
||||
- CONVEX_SITE_ORIGIN=http://${actions_domain}
|
||||
|
||||
mounts: []
|
||||
13
blueprints/couchdb/template.toml
Normal file
13
blueprints/couchdb/template.toml
Normal file
@@ -0,0 +1,13 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
username = "${password:16}"
|
||||
password = "${password:32}"
|
||||
|
||||
[config]
|
||||
env = ["COUCHDB_USER=${username}", "COUCHDB_PASSWORD=${password}"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "couchdb"
|
||||
port = 5_984
|
||||
host = "${main_domain}"
|
||||
@@ -1,16 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
username: ${password:16}
|
||||
password: ${password:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: couchdb
|
||||
port: 5984
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- COUCHDB_USER=${username}
|
||||
- COUCHDB_PASSWORD=${password}
|
||||
|
||||
mounts: []
|
||||
11
blueprints/datalens/template.toml
Normal file
11
blueprints/datalens/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = ["HC=1"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "datalens"
|
||||
port = 8_080
|
||||
host = "${main_domain}"
|
||||
@@ -1,13 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: datalens
|
||||
port: 8080
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- HC=1
|
||||
|
||||
mounts: []
|
||||
16
blueprints/directus/template.toml
Normal file
16
blueprints/directus/template.toml
Normal file
@@ -0,0 +1,16 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
directus_secret = "${base64:64}"
|
||||
database_password = "${password}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"DATABASE_PASSWORD=${database_password}",
|
||||
"DIRECTUS_SECRET=${directus_secret}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "directus"
|
||||
port = 8_055
|
||||
host = "${main_domain}"
|
||||
@@ -1,16 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
directus_secret: ${base64:64}
|
||||
database_password: ${password}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: directus
|
||||
port: 8055
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- DATABASE_PASSWORD=${database_password}
|
||||
- DIRECTUS_SECRET=${directus_secret}
|
||||
|
||||
mounts: []
|
||||
27
blueprints/discord-tickets/template.toml
Normal file
27
blueprints/discord-tickets/template.toml
Normal file
@@ -0,0 +1,27 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
mysql_password = "${password}"
|
||||
mysql_root_password = "${password}"
|
||||
mysql_user = "tickets"
|
||||
mysql_database = "tickets"
|
||||
encryption_key = "${password:48}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"TICKETS_HOST=${main_domain}",
|
||||
"MYSQL_DATABASE=${mysql_database}",
|
||||
"MYSQL_PASSWORD=${mysql_password}",
|
||||
"MYSQL_ROOT_PASSWORD=${mysql_root_password}",
|
||||
"MYSQL_USER=${mysql_user}",
|
||||
"ENCRYPTION_KEY=${encryption_key}",
|
||||
"# Follow the guide at: https://discordtickets.app/self-hosting/installation/docker/#creating-the-discord-application",
|
||||
"DISCORD_SECRET=",
|
||||
"DISCORD_TOKEN=",
|
||||
"SUPER_USERS=YOUR_DISCORD_USER_ID",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "tickets-app"
|
||||
port = 8_169
|
||||
host = "${main_domain}"
|
||||
@@ -1,27 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
mysql_password: ${password}
|
||||
mysql_root_password: ${password}
|
||||
mysql_user: tickets
|
||||
mysql_database: tickets
|
||||
encryption_key: ${password:48}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: tickets-app
|
||||
port: 8169
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- TICKETS_HOST=${main_domain}
|
||||
- MYSQL_DATABASE=${mysql_database}
|
||||
- MYSQL_PASSWORD=${mysql_password}
|
||||
- MYSQL_ROOT_PASSWORD=${mysql_root_password}
|
||||
- MYSQL_USER=${mysql_user}
|
||||
- ENCRYPTION_KEY=${encryption_key}
|
||||
- "# Follow the guide at: https://discordtickets.app/self-hosting/installation/docker/#creating-the-discord-application"
|
||||
- DISCORD_SECRET=
|
||||
- DISCORD_TOKEN=
|
||||
- SUPER_USERS=YOUR_DISCORD_USER_ID
|
||||
|
||||
mounts: []
|
||||
17
blueprints/discourse/template.toml
Normal file
17
blueprints/discourse/template.toml
Normal file
@@ -0,0 +1,17 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
postgres_password = "${password}"
|
||||
redis_password = "${password}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"DISCOURSE_HOST=${main_domain}",
|
||||
"POSTGRES_PASSWORD=${postgres_password}",
|
||||
"REDIS_PASSWORD=${redis_password}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "discourse-app"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,22 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
postgres_password: ${password}
|
||||
redis_password: ${password}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: discourse-app
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- DISCOURSE_HOST=${main_domain}
|
||||
- POSTGRES_PASSWORD=${postgres_password}
|
||||
- REDIS_PASSWORD=${redis_password}
|
||||
- # Optional: Configure SMTP for email delivery
|
||||
- # SMTP_HOST=smtp.example.com
|
||||
- # SMTP_PORT=587
|
||||
- # SMTP_USER=your_smtp_user
|
||||
- # SMTP_PASSWORD=your_smtp_password
|
||||
|
||||
mounts: []
|
||||
19
blueprints/docmost/template.toml
Normal file
19
blueprints/docmost/template.toml
Normal file
@@ -0,0 +1,19 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
postgres_password = "${password}"
|
||||
app_secret = "${password}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"POSTGRES_DB=docmost",
|
||||
"POSTGRES_USER=docmost",
|
||||
"POSTGRES_PASSWORD=${postgres_password}",
|
||||
"APP_URL=http://${main_domain}:3000",
|
||||
"APP_SECRET=${app_secret}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "docmost"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,19 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
postgres_password: ${password}
|
||||
app_secret: ${password}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: docmost
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- POSTGRES_DB=docmost
|
||||
- POSTGRES_USER=docmost
|
||||
- POSTGRES_PASSWORD=${postgres_password}
|
||||
- APP_URL=http://${main_domain}:3000
|
||||
- APP_SECRET=${app_secret}
|
||||
|
||||
mounts: []
|
||||
20
blueprints/documenso/template.toml
Normal file
20
blueprints/documenso/template.toml
Normal file
@@ -0,0 +1,20 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
nextauth_secret = "${base64:32}"
|
||||
encryption_key = "${password:32}"
|
||||
secondary_encryption_key = "${password:64}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"DOCUMENSO_HOST=${main_domain}",
|
||||
"DOCUMENSO_PORT=3000",
|
||||
"NEXTAUTH_SECRET=${nextauth_secret}",
|
||||
"NEXT_PRIVATE_ENCRYPTION_KEY=${encryption_key}",
|
||||
"NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY=${secondary_encryption_key}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "documenso"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,20 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
nextauth_secret: ${base64:32}
|
||||
encryption_key: ${password:32}
|
||||
secondary_encryption_key: ${password:64}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: documenso
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- DOCUMENSO_HOST=${main_domain}
|
||||
- DOCUMENSO_PORT=3000
|
||||
- NEXTAUTH_SECRET=${nextauth_secret}
|
||||
- NEXT_PRIVATE_ENCRYPTION_KEY=${encryption_key}
|
||||
- NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY=${secondary_encryption_key}
|
||||
|
||||
mounts: []
|
||||
21
blueprints/doublezero/template.toml
Normal file
21
blueprints/doublezero/template.toml
Normal file
@@ -0,0 +1,21 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
secret_key_base = "${base64:64}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"DOUBLEZERO_HOST=${main_domain}",
|
||||
"DOUBLEZERO_PORT=4000",
|
||||
"SECRET_KEY_BASE=${secret_key_base}",
|
||||
"AWS_ACCESS_KEY_ID=your-aws-access-key",
|
||||
"AWS_SECRET_ACCESS_KEY=your-aws-secret-key",
|
||||
"AWS_REGION=your-aws-region",
|
||||
"SQS_URL=your-aws-sqs-url",
|
||||
"SYSTEM_EMAIL=",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "doublezero"
|
||||
port = 4_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,21 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
secret_key_base: ${base64:64}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: doublezero
|
||||
port: 4000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- DOUBLEZERO_HOST=${main_domain}
|
||||
- DOUBLEZERO_PORT=4000
|
||||
- SECRET_KEY_BASE=${secret_key_base}
|
||||
- AWS_ACCESS_KEY_ID=your-aws-access-key
|
||||
- AWS_SECRET_ACCESS_KEY=your-aws-secret-key
|
||||
- AWS_REGION=your-aws-region
|
||||
- SQS_URL=your-aws-sqs-url
|
||||
- SYSTEM_EMAIL=
|
||||
|
||||
mounts: []
|
||||
15
blueprints/drawio/template.toml
Normal file
15
blueprints/drawio/template.toml
Normal file
@@ -0,0 +1,15 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"DRAWIO_HOST=${main_domain}",
|
||||
"DRAWIO_BASE_URL=https://${main_domain}",
|
||||
"DRAWIO_SERVER_URL=https://${main_domain}/",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "drawio"
|
||||
port = 8_080
|
||||
host = "${main_domain}"
|
||||
@@ -1,15 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: drawio
|
||||
port: 8080
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- DRAWIO_HOST=${main_domain}
|
||||
- DRAWIO_BASE_URL=https://${main_domain}
|
||||
- DRAWIO_SERVER_URL=https://${main_domain}/
|
||||
|
||||
mounts: []
|
||||
17
blueprints/elastic-search/template.toml
Normal file
17
blueprints/elastic-search/template.toml
Normal file
@@ -0,0 +1,17 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
api_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = []
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "kibana"
|
||||
port = 5_601
|
||||
host = "${main_domain}"
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "elasticsearch"
|
||||
port = 9_200
|
||||
host = "${api_domain}"
|
||||
@@ -1,16 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
api_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: kibana
|
||||
port: 5601
|
||||
host: ${main_domain}
|
||||
- serviceName: elasticsearch
|
||||
port: 9200
|
||||
host: ${api_domain}
|
||||
|
||||
env: []
|
||||
|
||||
mounts: []
|
||||
27
blueprints/erpnext/template.toml
Normal file
27
blueprints/erpnext/template.toml
Normal file
@@ -0,0 +1,27 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
db_root_password = "${password:32}"
|
||||
admin_password = "${password:32}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"SITE_NAME=${main_domain}",
|
||||
"ADMIN_PASSWORD=${admin_password}",
|
||||
"DB_ROOT_PASSWORD=${db_root_password}",
|
||||
"MIGRATE=1",
|
||||
"ENABLE_DB=1",
|
||||
"DB_HOST=db",
|
||||
"CREATE_SITE=1",
|
||||
"CONFIGURE=1",
|
||||
"REGENERATE_APPS_TXT=1",
|
||||
"INSTALL_APP_ARGS=--install-app erpnext",
|
||||
"IMAGE_NAME=docker.io/frappe/erpnext",
|
||||
"VERSION=version-15",
|
||||
"FRAPPE_SITE_NAME_HEADER=",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "frontend"
|
||||
port = 8_080
|
||||
host = "${main_domain}"
|
||||
@@ -1,27 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
db_root_password: ${password:32}
|
||||
admin_password: ${password:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: frontend
|
||||
port: 8080
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- SITE_NAME=${main_domain}
|
||||
- ADMIN_PASSWORD=${admin_password}
|
||||
- DB_ROOT_PASSWORD=${db_root_password}
|
||||
- MIGRATE=1
|
||||
- ENABLE_DB=1
|
||||
- DB_HOST=db
|
||||
- CREATE_SITE=1
|
||||
- CONFIGURE=1
|
||||
- REGENERATE_APPS_TXT=1
|
||||
- INSTALL_APP_ARGS=--install-app erpnext
|
||||
- IMAGE_NAME=docker.io/frappe/erpnext
|
||||
- VERSION=version-15
|
||||
- FRAPPE_SITE_NAME_HEADER=
|
||||
|
||||
mounts: []
|
||||
40
blueprints/evolutionapi/template.toml
Normal file
40
blueprints/evolutionapi/template.toml
Normal file
@@ -0,0 +1,40 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
api_key = "${base64:64}"
|
||||
postgres_password = "${password}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"SERVER_URL=https://${main_domain}",
|
||||
"AUTHENTICATION_TYPE=apikey",
|
||||
"AUTHENTICATION_API_KEY=${api_key}",
|
||||
"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=${postgres_password}",
|
||||
"DATABASE_ENABLED=true",
|
||||
"DATABASE_PROVIDER=postgresql",
|
||||
"DATABASE_CONNECTION_URI=postgres://postgresql:${postgres_password}@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",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "evolution-api"
|
||||
port = 8_080
|
||||
host = "${main_domain}"
|
||||
@@ -1,40 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
api_key: ${base64:64}
|
||||
postgres_password: ${password}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: evolution-api
|
||||
port: 8080
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- SERVER_URL=https://${main_domain}
|
||||
- AUTHENTICATION_TYPE=apikey
|
||||
- AUTHENTICATION_API_KEY=${api_key}
|
||||
- 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=${postgres_password}
|
||||
- DATABASE_ENABLED=true
|
||||
- DATABASE_PROVIDER=postgresql
|
||||
- DATABASE_CONNECTION_URI=postgres://postgresql:${postgres_password}@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
|
||||
|
||||
mounts: []
|
||||
11
blueprints/excalidraw/template.toml
Normal file
11
blueprints/excalidraw/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = []
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "excalidraw"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
@@ -1,12 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: excalidraw
|
||||
port: 80
|
||||
host: ${main_domain}
|
||||
|
||||
env: []
|
||||
|
||||
mounts: []
|
||||
11
blueprints/filebrowser/template.toml
Normal file
11
blueprints/filebrowser/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = ["FB_BASEURL=/filebrowser"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "filebrowser"
|
||||
port = 8_080
|
||||
host = "${main_domain}"
|
||||
@@ -1,13 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: filebrowser
|
||||
port: 8080
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- FB_BASEURL=/filebrowser
|
||||
|
||||
mounts: []
|
||||
20
blueprints/formbricks/template.toml
Normal file
20
blueprints/formbricks/template.toml
Normal file
@@ -0,0 +1,20 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
secret_base = "${base64:64}"
|
||||
encryption_key = "${base64:48}"
|
||||
cron_secret = "${base64:32}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"WEBAPP_URL=http://${main_domain}",
|
||||
"NEXTAUTH_URL=http://${main_domain}",
|
||||
"NEXTAUTH_SECRET=${secret_base}",
|
||||
"ENCRYPTION_KEY=${encryption_key}",
|
||||
"CRON_SECRET=${cron_secret}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "formbricks"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,20 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
secret_base: ${base64:64}
|
||||
encryption_key: ${base64:48}
|
||||
cron_secret: ${base64:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: formbricks
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- WEBAPP_URL=http://${main_domain}
|
||||
- NEXTAUTH_URL=http://${main_domain}
|
||||
- NEXTAUTH_SECRET=${secret_base}
|
||||
- ENCRYPTION_KEY=${encryption_key}
|
||||
- CRON_SECRET=${cron_secret}
|
||||
|
||||
mounts: []
|
||||
27
blueprints/frappe-hr/template.toml
Normal file
27
blueprints/frappe-hr/template.toml
Normal file
@@ -0,0 +1,27 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
db_root_password = "${password:32}"
|
||||
admin_password = "${password:32}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"SITE_NAME=${main_domain}",
|
||||
"ADMIN_PASSWORD=${admin_password}",
|
||||
"DB_ROOT_PASSWORD=${db_root_password}",
|
||||
"MIGRATE=1",
|
||||
"ENABLE_DB=1",
|
||||
"DB_HOST=db",
|
||||
"CREATE_SITE=1",
|
||||
"CONFIGURE=1",
|
||||
"REGENERATE_APPS_TXT=1",
|
||||
"INSTALL_APP_ARGS=--install-app hrms",
|
||||
"IMAGE_NAME=ghcr.io/frappe/hrms",
|
||||
"VERSION=version-15",
|
||||
"FRAPPE_SITE_NAME_HEADER=",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "frontend"
|
||||
port = 8_080
|
||||
host = "${main_domain}"
|
||||
@@ -1,27 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
db_root_password: ${password:32}
|
||||
admin_password: ${password:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: frontend
|
||||
port: 8080
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- SITE_NAME=${main_domain}
|
||||
- ADMIN_PASSWORD=${admin_password}
|
||||
- DB_ROOT_PASSWORD=${db_root_password}
|
||||
- MIGRATE=1
|
||||
- ENABLE_DB=1
|
||||
- DB_HOST=db
|
||||
- CREATE_SITE=1
|
||||
- CONFIGURE=1
|
||||
- REGENERATE_APPS_TXT=1
|
||||
- INSTALL_APP_ARGS=--install-app hrms
|
||||
- IMAGE_NAME=ghcr.io/frappe/hrms
|
||||
- VERSION=version-15
|
||||
- FRAPPE_SITE_NAME_HEADER=
|
||||
|
||||
mounts: []
|
||||
11
blueprints/ghost/template.toml
Normal file
11
blueprints/ghost/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = ["GHOST_HOST=${main_domain}"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "ghost"
|
||||
port = 2_368
|
||||
host = "${main_domain}"
|
||||
@@ -1,13 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: ghost
|
||||
port: 2368
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- GHOST_HOST=${main_domain}
|
||||
|
||||
mounts: []
|
||||
11
blueprints/gitea/template.toml
Normal file
11
blueprints/gitea/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = ["USER_UID=1000", "USER_GID=1000"]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "gitea"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,14 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: gitea
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- USER_UID=1000
|
||||
- USER_GID=1000
|
||||
|
||||
mounts: []
|
||||
94
blueprints/glance/template.toml
Normal file
94
blueprints/glance/template.toml
Normal file
@@ -0,0 +1,94 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "glance"
|
||||
port = 8_080
|
||||
host = "${main_domain}"
|
||||
|
||||
[[config.mounts]]
|
||||
filePath = "/app/config/glance.yml"
|
||||
content = """
|
||||
branding:
|
||||
hide-footer: true
|
||||
logo-text: P
|
||||
|
||||
pages:
|
||||
- name: Home
|
||||
columns:
|
||||
- size: small
|
||||
widgets:
|
||||
- type: calendar
|
||||
|
||||
- type: releases
|
||||
show-source-icon: true
|
||||
repositories:
|
||||
- Dokploy/dokploy
|
||||
- n8n-io/n8n
|
||||
- Budibase/budibase
|
||||
- home-assistant/core
|
||||
- tidbyt/pixlet
|
||||
|
||||
- type: twitch-channels
|
||||
channels:
|
||||
- nmplol
|
||||
- extraemily
|
||||
- qtcinderella
|
||||
- ludwig
|
||||
- timthetatman
|
||||
- mizkif
|
||||
|
||||
- size: full
|
||||
widgets:
|
||||
- type: hacker-news
|
||||
|
||||
- type: videos
|
||||
style: grid-cards
|
||||
channels:
|
||||
- UC3GzdWYwUYI1ACxuP9Nm-eg
|
||||
- UCGbg3DjQdcqWwqOLHpYHXIg
|
||||
- UC24RSoLcjiNZbQcT54j5l7Q
|
||||
limit: 3
|
||||
|
||||
- type: rss
|
||||
limit: 10
|
||||
collapse-after: 3
|
||||
cache: 3h
|
||||
feeds:
|
||||
- url: https://daringfireball.net/feeds/main
|
||||
title: Daring Fireball
|
||||
|
||||
- size: small
|
||||
widgets:
|
||||
- type: weather
|
||||
location: Gansevoort, New York, United States
|
||||
show-area-name: false
|
||||
units: imperial
|
||||
hour-format: 12h
|
||||
|
||||
- type: markets
|
||||
markets:
|
||||
- symbol: SPY
|
||||
name: S&P 500
|
||||
- symbol: VOO
|
||||
name: Vanguard
|
||||
- symbol: BTC-USD
|
||||
name: Bitcoin
|
||||
- symbol: ETH-USD
|
||||
name: Etherium
|
||||
- symbol: NVDA
|
||||
name: NVIDIA
|
||||
- symbol: AAPL
|
||||
name: Apple
|
||||
- symbol: MSFT
|
||||
name: Microsoft
|
||||
- symbol: GOOGL
|
||||
name: Google
|
||||
- symbol: AMD
|
||||
name: AMD
|
||||
- symbol: TSLA
|
||||
name: Tesla
|
||||
"""
|
||||
@@ -1,93 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: glance
|
||||
port: 8080
|
||||
host: ${main_domain}
|
||||
|
||||
env: []
|
||||
|
||||
mounts:
|
||||
- filePath: /app/config/glance.yml
|
||||
content: |
|
||||
branding:
|
||||
hide-footer: true
|
||||
logo-text: P
|
||||
|
||||
pages:
|
||||
- name: Home
|
||||
columns:
|
||||
- size: small
|
||||
widgets:
|
||||
- type: calendar
|
||||
|
||||
- type: releases
|
||||
show-source-icon: true
|
||||
repositories:
|
||||
- Dokploy/dokploy
|
||||
- n8n-io/n8n
|
||||
- Budibase/budibase
|
||||
- home-assistant/core
|
||||
- tidbyt/pixlet
|
||||
|
||||
- type: twitch-channels
|
||||
channels:
|
||||
- nmplol
|
||||
- extraemily
|
||||
- qtcinderella
|
||||
- ludwig
|
||||
- timthetatman
|
||||
- mizkif
|
||||
|
||||
- size: full
|
||||
widgets:
|
||||
- type: hacker-news
|
||||
|
||||
- type: videos
|
||||
style: grid-cards
|
||||
channels:
|
||||
- UC3GzdWYwUYI1ACxuP9Nm-eg
|
||||
- UCGbg3DjQdcqWwqOLHpYHXIg
|
||||
- UC24RSoLcjiNZbQcT54j5l7Q
|
||||
limit: 3
|
||||
|
||||
- type: rss
|
||||
limit: 10
|
||||
collapse-after: 3
|
||||
cache: 3h
|
||||
feeds:
|
||||
- url: https://daringfireball.net/feeds/main
|
||||
title: Daring Fireball
|
||||
|
||||
- size: small
|
||||
widgets:
|
||||
- type: weather
|
||||
location: Gansevoort, New York, United States
|
||||
show-area-name: false
|
||||
units: imperial
|
||||
hour-format: 12h
|
||||
|
||||
- type: markets
|
||||
markets:
|
||||
- symbol: SPY
|
||||
name: S&P 500
|
||||
- symbol: VOO
|
||||
name: Vanguard
|
||||
- symbol: BTC-USD
|
||||
name: Bitcoin
|
||||
- symbol: ETH-USD
|
||||
name: Etherium
|
||||
- symbol: NVDA
|
||||
name: NVIDIA
|
||||
- symbol: AAPL
|
||||
name: Apple
|
||||
- symbol: MSFT
|
||||
name: Microsoft
|
||||
- symbol: GOOGL
|
||||
name: Google
|
||||
- symbol: AMD
|
||||
name: AMD
|
||||
- symbol: TSLA
|
||||
name: Tesla
|
||||
16
blueprints/glitchtip/template.toml
Normal file
16
blueprints/glitchtip/template.toml
Normal file
@@ -0,0 +1,16 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
secret_key = "${base64:32}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"GLITCHTIP_HOST=${main_domain}",
|
||||
"GLITCHTIP_PORT=8000",
|
||||
"SECRET_KEY=${secret_key}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "web"
|
||||
port = 8_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,16 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
secret_key: ${base64:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: web
|
||||
port: 8000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- GLITCHTIP_HOST=${main_domain}
|
||||
- GLITCHTIP_PORT=8000
|
||||
- SECRET_KEY=${secret_key}
|
||||
|
||||
mounts: []
|
||||
11
blueprints/glpi/template.toml
Normal file
11
blueprints/glpi/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = []
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "glpi-web"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
@@ -1,12 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: glpi-web
|
||||
port: 80
|
||||
host: ${main_domain}
|
||||
|
||||
env: []
|
||||
|
||||
mounts: []
|
||||
16
blueprints/gotenberg/template.toml
Normal file
16
blueprints/gotenberg/template.toml
Normal file
@@ -0,0 +1,16 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
username = "gotenberg"
|
||||
password = "changethis"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"GOTENBERG_API_BASIC_AUTH_USERNAME=${username}",
|
||||
"GOTENBERG_API_BASIC_AUTH_PASSWORD=${password}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "gotenberg"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,16 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
username: gotenberg
|
||||
password: changethis
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: gotenberg
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- GOTENBERG_API_BASIC_AUTH_USERNAME=${username}
|
||||
- GOTENBERG_API_BASIC_AUTH_PASSWORD=${password}
|
||||
|
||||
mounts: []
|
||||
11
blueprints/grafana/template.toml
Normal file
11
blueprints/grafana/template.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
|
||||
[config]
|
||||
env = []
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "grafana"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,12 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: grafana
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env: []
|
||||
|
||||
mounts: []
|
||||
17
blueprints/heyform/template.toml
Normal file
17
blueprints/heyform/template.toml
Normal file
@@ -0,0 +1,17 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
session_key = "${base64:64}"
|
||||
form_encryption_key = "${base64:64}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"APP_HOMEPAGE_URL=http://${main_domain}",
|
||||
"SESSION_KEY=${session_key}",
|
||||
"FORM_ENCRYPTION_KEY=${form_encryption_key}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "heyform"
|
||||
port = 8_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,17 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
session_key: ${base64:64}
|
||||
form_encryption_key: ${base64:64}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: heyform
|
||||
port: 8000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- APP_HOMEPAGE_URL=http://${main_domain}
|
||||
- SESSION_KEY=${session_key}
|
||||
- FORM_ENCRYPTION_KEY=${form_encryption_key}
|
||||
|
||||
mounts: []
|
||||
27
blueprints/hi-events/template.toml
Normal file
27
blueprints/hi-events/template.toml
Normal file
@@ -0,0 +1,27 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
postgres_password = "${password}"
|
||||
jwt_secret = "${password}"
|
||||
app_key = "${password}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"DOMAIN=${main_domain}",
|
||||
"POSTGRES_DB=hievents",
|
||||
"POSTGRES_USER=hievents",
|
||||
"POSTGRES_PASSWORD=${postgres_password}",
|
||||
"VITE_STRIPE_PUBLISHABLE_KEY=",
|
||||
"APP_KEY=${app_key}",
|
||||
"JWT_SECRET=${jwt_secret}",
|
||||
"MAIL_MAILER=",
|
||||
"MAIL_HOST=",
|
||||
"MAIL_PORT=",
|
||||
"MAIL_FROM_ADDRESS=",
|
||||
"MAIL_FROM_NAME=",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "all-in-one"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
@@ -1,27 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
postgres_password: ${password}
|
||||
jwt_secret: ${password}
|
||||
app_key: ${password}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: all-in-one
|
||||
port: 80
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- DOMAIN=${main_domain}
|
||||
- POSTGRES_DB=hievents
|
||||
- POSTGRES_USER=hievents
|
||||
- POSTGRES_PASSWORD=${postgres_password}
|
||||
- VITE_STRIPE_PUBLISHABLE_KEY=
|
||||
- APP_KEY=${app_key}
|
||||
- JWT_SECRET=${jwt_secret}
|
||||
- MAIL_MAILER=
|
||||
- MAIL_HOST=
|
||||
- MAIL_PORT=
|
||||
- MAIL_FROM_ADDRESS=
|
||||
- MAIL_FROM_NAME=
|
||||
|
||||
mounts: []
|
||||
18
blueprints/hoarder/template.toml
Normal file
18
blueprints/hoarder/template.toml
Normal file
@@ -0,0 +1,18 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
postgres_password = "${password}"
|
||||
next_secret = "${base64:32}"
|
||||
meili_master_key = "${base64:32}"
|
||||
|
||||
[config]
|
||||
env = [
|
||||
"NEXTAUTH_SECRET=${next_secret}",
|
||||
"MEILI_MASTER_KEY=${meili_master_key}",
|
||||
"NEXTAUTH_URL=http://${main_domain}",
|
||||
]
|
||||
mounts = []
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "web"
|
||||
port = 3_000
|
||||
host = "${main_domain}"
|
||||
@@ -1,18 +0,0 @@
|
||||
variables:
|
||||
main_domain: ${domain}
|
||||
postgres_password: ${password}
|
||||
next_secret: ${base64:32}
|
||||
meili_master_key: ${base64:32}
|
||||
|
||||
config:
|
||||
domains:
|
||||
- serviceName: web
|
||||
port: 3000
|
||||
host: ${main_domain}
|
||||
|
||||
env:
|
||||
- NEXTAUTH_SECRET=${next_secret}
|
||||
- MEILI_MASTER_KEY=${meili_master_key}
|
||||
- NEXTAUTH_URL=http://${main_domain}
|
||||
|
||||
mounts: []
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user