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:
29
blueprints/shlink/docker-compose.yml
Normal file
29
blueprints/shlink/docker-compose.yml
Normal file
@@ -0,0 +1,29 @@
|
||||
services:
|
||||
shlink:
|
||||
image: shlinkio/shlink:stable
|
||||
environment:
|
||||
- INITIAL_API_KEY=${INITIAL_API_KEY}
|
||||
- DEFAULT_DOMAIN=${DEFAULT_DOMAIN}
|
||||
# Note: you should also update SHLINK_SERVER_URL in the shlink-web service.
|
||||
- IS_HTTPS_ENABLED=false
|
||||
volumes:
|
||||
- shlink-data:/etc/shlink/data
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://127.0.0.1:8080/rest/v3/health"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
shlink-web:
|
||||
image: shlinkio/shlink-web-client
|
||||
environment:
|
||||
- SHLINK_SERVER_API_KEY=${INITIAL_API_KEY}
|
||||
# Note: if you've set IS_HTTPS_ENABLED=true, change http to https.
|
||||
- SHLINK_SERVER_URL=http://${DEFAULT_DOMAIN}
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://127.0.0.1:8080"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
volumes:
|
||||
shlink-data:
|
||||
35
blueprints/shlink/index.ts
Normal file
35
blueprints/shlink/index.ts
Normal file
@@ -0,0 +1,35 @@
|
||||
import {
|
||||
type DomainSchema,
|
||||
type Schema,
|
||||
type Template,
|
||||
generatePassword,
|
||||
generateRandomDomain,
|
||||
} from "../utils";
|
||||
|
||||
export function generate(schema: Schema): Template {
|
||||
const defaultDomain = generateRandomDomain(schema);
|
||||
const initialApiKey = generatePassword(30);
|
||||
|
||||
const domains: DomainSchema[] = [
|
||||
{
|
||||
host: `web-${defaultDomain}`,
|
||||
port: 8080,
|
||||
serviceName: "shlink-web",
|
||||
},
|
||||
{
|
||||
host: defaultDomain,
|
||||
port: 8080,
|
||||
serviceName: "shlink",
|
||||
},
|
||||
];
|
||||
|
||||
const envs = [
|
||||
`INITIAL_API_KEY=${initialApiKey}`,
|
||||
`DEFAULT_DOMAIN=${defaultDomain}`,
|
||||
];
|
||||
|
||||
return {
|
||||
envs,
|
||||
domains,
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user