diff --git a/public/templates/appsmith.png b/public/templates/appsmith.png new file mode 100644 index 00000000..02b0e15a Binary files /dev/null and b/public/templates/appsmith.png differ diff --git a/templates/appsmith/docker-compose.yml b/templates/appsmith/docker-compose.yml new file mode 100644 index 00000000..4fbdc341 --- /dev/null +++ b/templates/appsmith/docker-compose.yml @@ -0,0 +1,18 @@ +version: "3.8" +services: + appsmith: + image: index.docker.io/appsmith/appsmith-ee:v1.29 + networks: + - dokploy-network + ports: + - ${APP_SMITH_PORT} + labels: + - "traefik.enable=true" + - "traefik.http.routers.${HASH}.rule=Host(`${APP_SMITH_HOST}`)" + - "traefik.http.services.${HASH}.loadbalancer.server.port=${APP_SMITH_PORT}" + volumes: + - ./stacks:/appsmith-stacks + +networks: + dokploy-network: + external: true \ No newline at end of file diff --git a/templates/appsmith/index.ts b/templates/appsmith/index.ts new file mode 100644 index 00000000..246679b0 --- /dev/null +++ b/templates/appsmith/index.ts @@ -0,0 +1,20 @@ +import { + generateHash, + generateRandomDomain, + type Template, + type Schema, +} from "../utils"; + +export function generate(schema: Schema): Template { + const mainServiceHash = generateHash(schema.projectName); + const randomDomain = generateRandomDomain(schema); + const envs = [ + `APP_SMITH_HOST=${randomDomain}`, + "APP_SMITH_PORT=80", + `HASH=${mainServiceHash}`, + ]; + + return { + envs, + }; +} diff --git a/templates/baserow/docker-compose.yml b/templates/baserow/docker-compose.yml index 0b54f183..df03b5be 100644 --- a/templates/baserow/docker-compose.yml +++ b/templates/baserow/docker-compose.yml @@ -1,4 +1,4 @@ -version: "3.4" +version: "3.8" services: baserow: image: baserow/baserow:1.25.2 diff --git a/templates/directus/docker-compose.yml b/templates/directus/docker-compose.yml index f4901d5b..b825de47 100644 --- a/templates/directus/docker-compose.yml +++ b/templates/directus/docker-compose.yml @@ -1,4 +1,4 @@ -version: "3" +version: "3.8" services: database: image: postgis/postgis:13-master diff --git a/templates/ghost/docker-compose.yml b/templates/ghost/docker-compose.yml index 8bcb31b5..aa3ffdbb 100644 --- a/templates/ghost/docker-compose.yml +++ b/templates/ghost/docker-compose.yml @@ -1,5 +1,4 @@ -version: '3.1' - +version: "3.8" services: ghost: @@ -10,16 +9,12 @@ services: ports: - 2368 environment: - # see https://ghost.org/docs/config/#configuration-options database__client: mysql database__connection__host: db database__connection__user: root database__connection__password: example database__connection__database: ghost - # this url value is just an example, and is likely wrong for your environment! url: http://${GHOST_HOST} - # contrary to the default mentioned in the linked documentation, this image defaults to NODE_ENV=production (so development mode needs to be explicitly specified if desired) - #NODE_ENV: development labels: - traefik.enable=true - traefik.http.routers.${HASH}.rule=Host(`${GHOST_HOST}`) diff --git a/templates/n8n/docker-compose.yml b/templates/n8n/docker-compose.yml index 446b6297..d4316fab 100644 --- a/templates/n8n/docker-compose.yml +++ b/templates/n8n/docker-compose.yml @@ -1,4 +1,4 @@ -version: "3.7" +version: "3.8" services: n8n: image: docker.n8n.io/n8nio/n8n:1.48.1 diff --git a/templates/odoo/docker-compose.yml b/templates/odoo/docker-compose.yml index 291b737b..8538bc72 100644 --- a/templates/odoo/docker-compose.yml +++ b/templates/odoo/docker-compose.yml @@ -1,5 +1,4 @@ version: '3.8' - services: web: image: odoo:16.0 diff --git a/templates/plausible/docker-compose.yml b/templates/plausible/docker-compose.yml index 9dea594b..cc4c41e2 100644 --- a/templates/plausible/docker-compose.yml +++ b/templates/plausible/docker-compose.yml @@ -1,7 +1,6 @@ +version: "3.8" services: plausible_db: - # Plausible v2.1.0 was tested against PostgreSQL versions 15 and 16 - # https://github.com/plausible/analytics/blob/v2.1.0/.github/workflows/elixir.yml#L21-L32 image: postgres:16-alpine restart: always networks: diff --git a/templates/pocketbase/docker-compose.yml b/templates/pocketbase/docker-compose.yml index a09975bb..7570dd58 100644 --- a/templates/pocketbase/docker-compose.yml +++ b/templates/pocketbase/docker-compose.yml @@ -1,4 +1,4 @@ -version: "3.7" +version: "3.8" services: pocketbase: image: spectado/pocketbase:0.22.12 diff --git a/templates/templates.ts b/templates/templates.ts index 4ea70a70..a57c3303 100644 --- a/templates/templates.ts +++ b/templates/templates.ts @@ -167,4 +167,19 @@ export const templates: TemplateData[] = [ tags: ["cms"], load: () => import("./odoo/index").then((m) => m.generate), }, + { + id: "appsmith", + name: "Appsmith", + version: "v1.29", + description: + "Appsmith is a free and open source platform for building internal tools and applications.", + logo: "appsmith.png", + links: { + github: "https://github.com/appsmithorg/appsmith", + website: "https://appsmith.com/", + docs: "https://docs.appsmith.com/", + }, + tags: ["cms"], + load: () => import("./appsmith/index").then((m) => m.generate), + }, ]; diff --git a/templates/uptime-kuma/docker-compose.yml b/templates/uptime-kuma/docker-compose.yml index acec0e67..40696b65 100644 --- a/templates/uptime-kuma/docker-compose.yml +++ b/templates/uptime-kuma/docker-compose.yml @@ -1,4 +1,4 @@ -version: "3.4" +version: "3.8" services: uptime-kuma: networks: diff --git a/templates/wordpress/docker-compose.yml b/templates/wordpress/docker-compose.yml index 4e2fb64c..e1e99e6b 100644 --- a/templates/wordpress/docker-compose.yml +++ b/templates/wordpress/docker-compose.yml @@ -1,5 +1,4 @@ version: '3.8' - services: wordpress: image: wordpress:5.8.3