[PR #737] [MERGED] New Version #1273

Closed
opened 2026-04-16 11:32:32 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/Dokploy/templates/pull/737
Author: @Siumauricio
Created: 3/5/2026
Status: Merged
Merged: 3/5/2026
Merged by: @Siumauricio

Base: mainHead: canary


📝 Commits (10+)

  • 1e21b7e feat(librechat): add LibreChat blueprint with compose, toml, metadata, links and tags
  • 758cf1d fix: rename templates to template.toml
  • 47daea9 fix(librechat): rename api service to librechat in docker-compose.yml
  • 3e8b431 Update blueprints/librechat/template.toml
  • 60796a9 Update blueprints/librechat/template.toml
  • 1d70294 fix(librechat): add version under [config] and remove stray [config.mounts] header
  • 2e1fb3b fix(librechat): remove predefined persistent volume mounts from template.toml
  • 46dc5b9 docs(librechat): add authentication reference link to docker-compose.yml
  • ac07aa2 feat: add Rote template
  • d58cc15 fix: process meta.json to fix formatting and sorting

📊 Changes

25 files changed (+915 additions, -87 deletions)

View changed files

📝 blueprints/convex/docker-compose.yml (+8 -8)
📝 blueprints/evolutionapi/docker-compose.yml (+1 -1)
📝 blueprints/grafana/docker-compose.yml (+1 -1)
blueprints/imgproxy/docker-compose.yml (+76 -0)
blueprints/imgproxy/imgproxy.png (+0 -0)
blueprints/imgproxy/template.toml (+56 -0)
blueprints/mediafetch/docker-compose.yml (+18 -0)
blueprints/mediafetch/mediafetch.svg (+1 -0)
blueprints/mediafetch/template.toml (+15 -0)
📝 blueprints/nextcloud-aio/docker-compose.yml (+14 -12)
blueprints/nextcloud-aio/nextcloud-aio.svg (+0 -1)
blueprints/nextcloud-aio/nextcloud.png (+0 -0)
📝 blueprints/nextcloud-aio/template.toml (+166 -12)
📝 blueprints/notifuse/docker-compose.yml (+28 -30)
📝 blueprints/notifuse/template.toml (+2 -17)
blueprints/tuwunel/docker-compose.yml (+18 -0)
blueprints/tuwunel/template.toml (+15 -0)
blueprints/tuwunel/tuwunel.svg (+4 -0)
blueprints/unleash/docker-compose.yml (+49 -0)
blueprints/unleash/template.toml (+17 -0)

...and 5 more files

📄 Description

What is this PR about?

New PR of [Template Name]

Checklist

Before submitting this PR, please make sure that:

Close automatically the related issues using the keywords: closes #ISSUE_NUMBER

Screenshots or Videos

Greptile Summary

This is a large bulk update PR touching 72 files — adding ~20 new blueprints and updating ~15 existing ones with version bumps, dependency fixes, and structural improvements. While many individual changes are sound (convex portsexpose fix, budibase/appsmith/grafana version bumps, supabase CONTAINER_PREFIX fix), the sheer scale of changes introduces numerous violations of the project's AGENTS.md conventions that need to be resolved before merging.

Critical issues requiring fixes:

  • ports directive used in 4 blueprints (ipfs, trilium-next, verdaccio, vikunja) — this is explicitly forbidden; use expose + [[config.domains]] instead. The vikunja case is a regression.
  • container_name: wg-easy added to wg-easy/docker-compose.yml — explicitly forbidden.
  • Service name mismatches: wuzapi-server (folder: wuzapi) and trilium_next (folder: trilium-next) — must match exactly.
  • Absolute host bind mounts in trilium-next (~/trilium-data, /etc/timezone, /etc/localtime) — forbidden per AGENTS.md.
  • Version mismatches: mediafetch image uses latest but meta.json says 1.1.1; evolutionapi image changed to latest but meta.json still shows v2.1.2.
  • Non-deterministic image references in postgres-pgdog (${PGDOG_IMAGE}, ${POSTGRES_IMAGE}) — images must be pinned to specific versions.
  • Broken vikunja healthcheck: CMD-SHELL array form with env vars that won't be shell-substituted.
  • Missing restart policy on verdaccio and openclaw main service.
  • Missing version: "3.8" in openclaw, seaweedfs, strapi, and trilium-next.

Confidence Score: 1/5

  • Not safe to merge — multiple new blueprints have critical convention violations and functional bugs that would break Dokploy deployments.
  • There are 10+ distinct violations of the mandatory AGENTS.md conventions across multiple files: forbidden ports directives (4 files), forbidden container_name (1 file), service naming mismatches (2 files), absolute host bind mounts (1 file), version mismatches between meta.json and image tags (2 files), non-deterministic image references (1 file), a broken healthcheck (1 file), missing restart policies (2 files), and missing version: "3.8" declarations (4 files). Many of these would cause actual deployment failures in Dokploy.
  • blueprints/ipfs/docker-compose.yml, blueprints/trilium-next/docker-compose.yml, blueprints/verdaccio/docker-compose.yml, blueprints/vikunja/docker-compose.yml, blueprints/wg-easy/docker-compose.yml, blueprints/wuzapi/docker-compose.yml, blueprints/mediafetch/docker-compose.yml, blueprints/evolutionapi/docker-compose.yml, blueprints/postgres-pgdog/docker-compose.yml, blueprints/openclaw/docker-compose.yml

Comments Outside Diff (8)

  1. General comment

    ports directive forbidden by project conventions

    Per AGENTS.md, ports must never be included in Dokploy blueprints — Dokploy handles routing via its own ingress. This same violation appears in several other files in this PR:

    • blueprints/ipfs/docker-compose.yml lines 11–14
    • blueprints/trilium-next/docker-compose.yml lines 11–17
    • blueprints/verdaccio/docker-compose.yml lines 8–9
    • blueprints/vikunja/docker-compose.yml lines 14–15 (regression — previously used expose)

    Replace ports with expose in all of these files and configure routing through template.toml [[config.domains]] entries instead.

    Context Used: Rule from dashboard - AGENTS.md (source)

  2. General comment

    container_name forbidden by project conventions

    AGENTS.md explicitly states that container_name must never be included in Dokploy blueprints, as it can conflict with Dokploy's internal container management.

    (Remove the container_name: wg-easy line entirely.)

    Context Used: Rule from dashboard - AGENTS.md (source)

  3. General comment

    Service name must match blueprint folder name

    AGENTS.md requires that the primary service name exactly matches the blueprint folder name. The folder is wuzapi but the service is named wuzapi-server. This mismatch will cause Dokploy domain routing (configured in template.toml with serviceName = "wuzapi-server") to be inconsistent with the convention.

    Context Used: Rule from dashboard - AGENTS.md (source)

  4. General comment

    Service name must match blueprint folder name

    AGENTS.md requires the primary service name to exactly match the blueprint folder name. The folder is trilium-next but the service is trilium_next (underscore instead of hyphen). These are treated as distinct identifiers.

    Context Used: Rule from dashboard - AGENTS.md (source)

  5. General comment

    Absolute host paths in bind mounts are forbidden

    AGENTS.md explicitly prohibits absolute host paths in volume bind mounts. Three bind mounts here violate this rule:

    • ${TRILIUM_DATA_DIR:-~/trilium-data} — uses a ~-relative home directory path, which is an absolute path on the host
    • /etc/timezone:/etc/timezone:ro — absolute host path
    • /etc/localtime:/etc/localtime:ro — absolute host path

    For trilium-data, use a named volume instead. For timezone/locale, these are host-specific paths that are not portable in a Dokploy context and should be removed; the container image handles its own timezone.

    Context Used: Rule from dashboard - AGENTS.md (source)

  6. General comment

    Docker images must be pinned to specific versions, not user-supplied variables

    Both ${PGDOG_IMAGE} and ${POSTGRES_IMAGE} (line 18) are environment variable references used as image names. This means the actual image to be pulled is entirely determined at runtime by the user, making the template non-deterministic and impossible to validate. AGENTS.md requires images to be pinned to specific versions to prevent supply chain attacks and ensure consistent deployments.

    Hardcode the image references to specific, tested version tags (e.g., pgdogio/pgdog:0.1.6 and postgres:17-alpine) and update meta.json accordingly.

    Context Used: Rule from dashboard - AGENTS.md (source)

  7. General comment

    Broken healthcheck: CMD-SHELL requires a single shell string, not multiple arguments

    CMD-SHELL runs a command via the shell and expects a single string as its argument. When passed as an array like ["CMD-SHELL", "pg_isready", "-U", "...", "-d", "..."], only pg_isready is passed as the shell command — the -U and -d flags are silently ignored, so the healthcheck will succeed regardless of the database state.

    Additionally, environment variable substitution does not occur in the exec-form array — ${VIKUNJA_DATABASE_USER} will be passed as a literal string rather than the resolved value.

    (Use $ to escape the `## What is this PR about?

New PR of [Template Name]

Checklist

Before submitting this PR, please make sure that:

Close automatically the related issues using the keywords: closes #ISSUE_NUMBER

Screenshots or Videos

Greptile Summary

This is a large bulk update PR touching 72 files — adding ~20 new blueprints and updating ~15 existing ones with version bumps, dependency fixes, and structural improvements. While many individual changes are sound (convex portsexpose fix, budibase/appsmith/grafana version bumps, supabase CONTAINER_PREFIX fix), the sheer scale of changes introduces numerous violations of the project's AGENTS.md conventions that need to be resolved before merging.

Critical issues requiring fixes:

  • ports directive used in 4 blueprints (ipfs, trilium-next, verdaccio, vikunja) — this is explicitly forbidden; use expose + [[config.domains]] instead. The vikunja case is a regression.
  • container_name: wg-easy added to wg-easy/docker-compose.yml — explicitly forbidden.
  • Service name mismatches: wuzapi-server (folder: wuzapi) and trilium_next (folder: trilium-next) — must match exactly.
  • Absolute host bind mounts in trilium-next (~/trilium-data, /etc/timezone, /etc/localtime) — forbidden per AGENTS.md.
  • Version mismatches: mediafetch image uses latest but meta.json says 1.1.1; evolutionapi image changed to latest but meta.json still shows v2.1.2.
  • Non-deterministic image references in postgres-pgdog (${PGDOG_IMAGE}, ${POSTGRES_IMAGE}) — images must be pinned to specific versions.
  • Broken vikunja healthcheck: CMD-SHELL array form with env vars that won't be shell-substituted.
  • Missing restart policy on verdaccio and openclaw main service.
  • Missing version: "3.8" in openclaw, seaweedfs, strapi, and trilium-next.

Confidence Score: 1/5

  • Not safe to merge — multiple new blueprints have critical convention violations and functional bugs that would break Dokploy deployments.
  • There are 10+ distinct violations of the mandatory AGENTS.md conventions across multiple files: forbidden ports directives (4 files), forbidden container_name (1 file), service naming mismatches (2 files), absolute host bind mounts (1 file), version mismatches between meta.json and image tags (2 files), non-deterministic image references (1 file), a broken healthcheck (1 file), missing restart policies (2 files), and missing version: "3.8" declarations (4 files). Many of these would cause actual deployment failures in Dokploy.
  • blueprints/ipfs/docker-compose.yml, blueprints/trilium-next/docker-compose.yml, blueprints/verdaccio/docker-compose.yml, blueprints/vikunja/docker-compose.yml, blueprints/wg-easy/docker-compose.yml, blueprints/wuzapi/docker-compose.yml, blueprints/mediafetch/docker-compose.yml, blueprints/evolutionapi/docker-compose.yml, blueprints/postgres-pgdog/docker-compose.yml, blueprints/openclaw/docker-compose.yml

so Docker performs the substitution at container runtime.)

  1. General comment

    Missing version: "3.8" and restart policy; unpinned browser image

    Three issues in this file:

    1. Missing version: "3.8"AGENTS.md requires all Dokploy blueprints to declare version: "3.8" at the top of the compose file. This also applies to blueprints/seaweedfs/docker-compose.yml, blueprints/strapi/docker-compose.yml, and blueprints/trilium-next/docker-compose.yml in this PR.
    2. openclaw service is missing a restart policy — add restart: unless-stopped or restart: always.
    3. coollabsio/openclaw-browser:latest — the browser service uses an unpinned latest tag. Pin it to a specific version to match the openclaw service version and update meta.json accordingly.

    Context Used: Rule from dashboard - AGENTS.md (source)

Last reviewed commit: d157cef

Greptile also left 3 inline comments on this PR.

Context used:

  • Rule from dashboard - AGENTS.md (source)

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/Dokploy/templates/pull/737 **Author:** [@Siumauricio](https://github.com/Siumauricio) **Created:** 3/5/2026 **Status:** ✅ Merged **Merged:** 3/5/2026 **Merged by:** [@Siumauricio](https://github.com/Siumauricio) **Base:** `main` ← **Head:** `canary` --- ### 📝 Commits (10+) - [`1e21b7e`](https://github.com/Dokploy/templates/commit/1e21b7e785b5a2e1b5a604df57cd23d31a0d3955) feat(librechat): add LibreChat blueprint with compose, toml, metadata, links and tags - [`758cf1d`](https://github.com/Dokploy/templates/commit/758cf1d873d45ea0771c109cbcb6101fedc3ba79) fix: rename templates to template.toml - [`47daea9`](https://github.com/Dokploy/templates/commit/47daea92f862cf2d111d017b6f3e9da176455451) fix(librechat): rename api service to librechat in docker-compose.yml - [`3e8b431`](https://github.com/Dokploy/templates/commit/3e8b43103173503b19e93276aa9810f4fa8cba98) Update blueprints/librechat/template.toml - [`60796a9`](https://github.com/Dokploy/templates/commit/60796a90847bf27061eaba5491eb02c49400bdf2) Update blueprints/librechat/template.toml - [`1d70294`](https://github.com/Dokploy/templates/commit/1d702943103d80af380e68f9a274d14d2fd90223) fix(librechat): add version under [config] and remove stray [config.mounts] header - [`2e1fb3b`](https://github.com/Dokploy/templates/commit/2e1fb3b3a9ea2c277d593ca5891e744b0c01a7f6) fix(librechat): remove predefined persistent volume mounts from template.toml - [`46dc5b9`](https://github.com/Dokploy/templates/commit/46dc5b9be3ea8f06d931d709ded142d2f7a216a9) docs(librechat): add authentication reference link to docker-compose.yml - [`ac07aa2`](https://github.com/Dokploy/templates/commit/ac07aa2ed86c1ff47af34a3e50533ea2ce4946ff) feat: add Rote template - [`d58cc15`](https://github.com/Dokploy/templates/commit/d58cc15c54c09f2e8a5768c839d569a2d2d61ce0) fix: process meta.json to fix formatting and sorting ### 📊 Changes **25 files changed** (+915 additions, -87 deletions) <details> <summary>View changed files</summary> 📝 `blueprints/convex/docker-compose.yml` (+8 -8) 📝 `blueprints/evolutionapi/docker-compose.yml` (+1 -1) 📝 `blueprints/grafana/docker-compose.yml` (+1 -1) ➕ `blueprints/imgproxy/docker-compose.yml` (+76 -0) ➕ `blueprints/imgproxy/imgproxy.png` (+0 -0) ➕ `blueprints/imgproxy/template.toml` (+56 -0) ➕ `blueprints/mediafetch/docker-compose.yml` (+18 -0) ➕ `blueprints/mediafetch/mediafetch.svg` (+1 -0) ➕ `blueprints/mediafetch/template.toml` (+15 -0) 📝 `blueprints/nextcloud-aio/docker-compose.yml` (+14 -12) ➖ `blueprints/nextcloud-aio/nextcloud-aio.svg` (+0 -1) ➕ `blueprints/nextcloud-aio/nextcloud.png` (+0 -0) 📝 `blueprints/nextcloud-aio/template.toml` (+166 -12) 📝 `blueprints/notifuse/docker-compose.yml` (+28 -30) 📝 `blueprints/notifuse/template.toml` (+2 -17) ➕ `blueprints/tuwunel/docker-compose.yml` (+18 -0) ➕ `blueprints/tuwunel/template.toml` (+15 -0) ➕ `blueprints/tuwunel/tuwunel.svg` (+4 -0) ➕ `blueprints/unleash/docker-compose.yml` (+49 -0) ➕ `blueprints/unleash/template.toml` (+17 -0) _...and 5 more files_ </details> ### 📄 Description ## What is this PR about? New PR of [Template Name] ## Checklist Before submitting this PR, please make sure that: - [x] I have read the suggestions in the README.md file https://github.com/Dokploy/templates?tab=readme-ov-file#general-requirements-when-creating-a-template - [x] I have tested the template in my instance, so the maintainers don't spend time trying to figure out what's wrong. - [x] I have added tests that demonstrate that my correction works or that my new feature works. ## Issues related (if applicable) Close automatically the related issues using the keywords: `closes #ISSUE_NUMBER` ## Screenshots or Videos <!-- greptile_comment --> <h3>Greptile Summary</h3> This is a large bulk update PR touching 72 files — adding ~20 new blueprints and updating ~15 existing ones with version bumps, dependency fixes, and structural improvements. While many individual changes are sound (convex `ports`→`expose` fix, budibase/appsmith/grafana version bumps, supabase `CONTAINER_PREFIX` fix), the sheer scale of changes introduces numerous violations of the project's `AGENTS.md` conventions that need to be resolved before merging. **Critical issues requiring fixes:** - **`ports` directive used in 4 blueprints** (`ipfs`, `trilium-next`, `verdaccio`, `vikunja`) — this is explicitly forbidden; use `expose` + `[[config.domains]]` instead. The `vikunja` case is a regression. - **`container_name: wg-easy`** added to `wg-easy/docker-compose.yml` — explicitly forbidden. - **Service name mismatches**: `wuzapi-server` (folder: `wuzapi`) and `trilium_next` (folder: `trilium-next`) — must match exactly. - **Absolute host bind mounts** in `trilium-next` (`~/trilium-data`, `/etc/timezone`, `/etc/localtime`) — forbidden per `AGENTS.md`. - **Version mismatches**: `mediafetch` image uses `latest` but `meta.json` says `1.1.1`; `evolutionapi` image changed to `latest` but `meta.json` still shows `v2.1.2`. - **Non-deterministic image references** in `postgres-pgdog` (`${PGDOG_IMAGE}`, `${POSTGRES_IMAGE}`) — images must be pinned to specific versions. - **Broken `vikunja` healthcheck**: `CMD-SHELL` array form with env vars that won't be shell-substituted. - **Missing `restart` policy** on `verdaccio` and `openclaw` main service. - **Missing `version: "3.8"`** in `openclaw`, `seaweedfs`, `strapi`, and `trilium-next`. <h3>Confidence Score: 1/5</h3> - Not safe to merge — multiple new blueprints have critical convention violations and functional bugs that would break Dokploy deployments. - There are 10+ distinct violations of the mandatory AGENTS.md conventions across multiple files: forbidden `ports` directives (4 files), forbidden `container_name` (1 file), service naming mismatches (2 files), absolute host bind mounts (1 file), version mismatches between meta.json and image tags (2 files), non-deterministic image references (1 file), a broken healthcheck (1 file), missing `restart` policies (2 files), and missing `version: "3.8"` declarations (4 files). Many of these would cause actual deployment failures in Dokploy. - blueprints/ipfs/docker-compose.yml, blueprints/trilium-next/docker-compose.yml, blueprints/verdaccio/docker-compose.yml, blueprints/vikunja/docker-compose.yml, blueprints/wg-easy/docker-compose.yml, blueprints/wuzapi/docker-compose.yml, blueprints/mediafetch/docker-compose.yml, blueprints/evolutionapi/docker-compose.yml, blueprints/postgres-pgdog/docker-compose.yml, blueprints/openclaw/docker-compose.yml <!-- greptile_failed_comments --> <details><summary><h3>Comments Outside Diff (8)</h3></summary> 1. General comment **`ports` directive forbidden by project conventions** Per `AGENTS.md`, `ports` must **never** be included in Dokploy blueprints — Dokploy handles routing via its own ingress. This same violation appears in several other files in this PR: - `blueprints/ipfs/docker-compose.yml` lines 11–14 - `blueprints/trilium-next/docker-compose.yml` lines 11–17 - `blueprints/verdaccio/docker-compose.yml` lines 8–9 - `blueprints/vikunja/docker-compose.yml` lines 14–15 (regression — previously used `expose`) Replace `ports` with `expose` in all of these files and configure routing through `template.toml` `[[config.domains]]` entries instead. **Context Used:** Rule from `dashboard` - AGENTS.md ([source](https://app.greptile.com/review/custom-context?memory=09330bde-2058-497c-9c64-ceae637fb5b2)) 2. General comment **`container_name` forbidden by project conventions** `AGENTS.md` explicitly states that `container_name` must **never** be included in Dokploy blueprints, as it can conflict with Dokploy's internal container management. (Remove the `container_name: wg-easy` line entirely.) **Context Used:** Rule from `dashboard` - AGENTS.md ([source](https://app.greptile.com/review/custom-context?memory=09330bde-2058-497c-9c64-ceae637fb5b2)) 3. General comment **Service name must match blueprint folder name** `AGENTS.md` requires that the primary service name exactly matches the blueprint folder name. The folder is `wuzapi` but the service is named `wuzapi-server`. This mismatch will cause Dokploy domain routing (configured in `template.toml` with `serviceName = "wuzapi-server"`) to be inconsistent with the convention. **Context Used:** Rule from `dashboard` - AGENTS.md ([source](https://app.greptile.com/review/custom-context?memory=09330bde-2058-497c-9c64-ceae637fb5b2)) 4. General comment **Service name must match blueprint folder name** `AGENTS.md` requires the primary service name to exactly match the blueprint folder name. The folder is `trilium-next` but the service is `trilium_next` (underscore instead of hyphen). These are treated as distinct identifiers. **Context Used:** Rule from `dashboard` - AGENTS.md ([source](https://app.greptile.com/review/custom-context?memory=09330bde-2058-497c-9c64-ceae637fb5b2)) 5. General comment **Absolute host paths in bind mounts are forbidden** `AGENTS.md` explicitly prohibits absolute host paths in volume bind mounts. Three bind mounts here violate this rule: - `${TRILIUM_DATA_DIR:-~/trilium-data}` — uses a `~`-relative home directory path, which is an absolute path on the host - `/etc/timezone:/etc/timezone:ro` — absolute host path - `/etc/localtime:/etc/localtime:ro` — absolute host path For `trilium-data`, use a named volume instead. For timezone/locale, these are host-specific paths that are not portable in a Dokploy context and should be removed; the container image handles its own timezone. **Context Used:** Rule from `dashboard` - AGENTS.md ([source](https://app.greptile.com/review/custom-context?memory=09330bde-2058-497c-9c64-ceae637fb5b2)) 6. General comment **Docker images must be pinned to specific versions, not user-supplied variables** Both `${PGDOG_IMAGE}` and `${POSTGRES_IMAGE}` (line 18) are environment variable references used as image names. This means the actual image to be pulled is entirely determined at runtime by the user, making the template non-deterministic and impossible to validate. `AGENTS.md` requires images to be pinned to specific versions to prevent supply chain attacks and ensure consistent deployments. Hardcode the image references to specific, tested version tags (e.g., `pgdogio/pgdog:0.1.6` and `postgres:17-alpine`) and update `meta.json` accordingly. **Context Used:** Rule from `dashboard` - AGENTS.md ([source](https://app.greptile.com/review/custom-context?memory=09330bde-2058-497c-9c64-ceae637fb5b2)) 7. General comment **Broken healthcheck: `CMD-SHELL` requires a single shell string, not multiple arguments** `CMD-SHELL` runs a command via the shell and expects a **single string** as its argument. When passed as an array like `["CMD-SHELL", "pg_isready", "-U", "...", "-d", "..."]`, only `pg_isready` is passed as the shell command — the `-U` and `-d` flags are silently ignored, so the healthcheck will succeed regardless of the database state. Additionally, environment variable substitution does not occur in the exec-form array — `${VIKUNJA_DATABASE_USER}` will be passed as a literal string rather than the resolved value. (Use `$` to escape the `## What is this PR about? New PR of [Template Name] ## Checklist Before submitting this PR, please make sure that: - [x] I have read the suggestions in the README.md file https://github.com/Dokploy/templates?tab=readme-ov-file#general-requirements-when-creating-a-template - [x] I have tested the template in my instance, so the maintainers don't spend time trying to figure out what's wrong. - [x] I have added tests that demonstrate that my correction works or that my new feature works. ## Issues related (if applicable) Close automatically the related issues using the keywords: `closes #ISSUE_NUMBER` ## Screenshots or Videos <!-- greptile_comment --> <h3>Greptile Summary</h3> This is a large bulk update PR touching 72 files — adding ~20 new blueprints and updating ~15 existing ones with version bumps, dependency fixes, and structural improvements. While many individual changes are sound (convex `ports`→`expose` fix, budibase/appsmith/grafana version bumps, supabase `CONTAINER_PREFIX` fix), the sheer scale of changes introduces numerous violations of the project's `AGENTS.md` conventions that need to be resolved before merging. **Critical issues requiring fixes:** - **`ports` directive used in 4 blueprints** (`ipfs`, `trilium-next`, `verdaccio`, `vikunja`) — this is explicitly forbidden; use `expose` + `[[config.domains]]` instead. The `vikunja` case is a regression. - **`container_name: wg-easy`** added to `wg-easy/docker-compose.yml` — explicitly forbidden. - **Service name mismatches**: `wuzapi-server` (folder: `wuzapi`) and `trilium_next` (folder: `trilium-next`) — must match exactly. - **Absolute host bind mounts** in `trilium-next` (`~/trilium-data`, `/etc/timezone`, `/etc/localtime`) — forbidden per `AGENTS.md`. - **Version mismatches**: `mediafetch` image uses `latest` but `meta.json` says `1.1.1`; `evolutionapi` image changed to `latest` but `meta.json` still shows `v2.1.2`. - **Non-deterministic image references** in `postgres-pgdog` (`${PGDOG_IMAGE}`, `${POSTGRES_IMAGE}`) — images must be pinned to specific versions. - **Broken `vikunja` healthcheck**: `CMD-SHELL` array form with env vars that won't be shell-substituted. - **Missing `restart` policy** on `verdaccio` and `openclaw` main service. - **Missing `version: "3.8"`** in `openclaw`, `seaweedfs`, `strapi`, and `trilium-next`. <h3>Confidence Score: 1/5</h3> - Not safe to merge — multiple new blueprints have critical convention violations and functional bugs that would break Dokploy deployments. - There are 10+ distinct violations of the mandatory AGENTS.md conventions across multiple files: forbidden `ports` directives (4 files), forbidden `container_name` (1 file), service naming mismatches (2 files), absolute host bind mounts (1 file), version mismatches between meta.json and image tags (2 files), non-deterministic image references (1 file), a broken healthcheck (1 file), missing `restart` policies (2 files), and missing `version: "3.8"` declarations (4 files). Many of these would cause actual deployment failures in Dokploy. - blueprints/ipfs/docker-compose.yml, blueprints/trilium-next/docker-compose.yml, blueprints/verdaccio/docker-compose.yml, blueprints/vikunja/docker-compose.yml, blueprints/wg-easy/docker-compose.yml, blueprints/wuzapi/docker-compose.yml, blueprints/mediafetch/docker-compose.yml, blueprints/evolutionapi/docker-compose.yml, blueprints/postgres-pgdog/docker-compose.yml, blueprints/openclaw/docker-compose.yml so Docker performs the substitution at container runtime.) 8. General comment **Missing `version: "3.8"` and `restart` policy; unpinned browser image** Three issues in this file: 1. **Missing `version: "3.8"`** — `AGENTS.md` requires all Dokploy blueprints to declare `version: "3.8"` at the top of the compose file. This also applies to `blueprints/seaweedfs/docker-compose.yml`, `blueprints/strapi/docker-compose.yml`, and `blueprints/trilium-next/docker-compose.yml` in this PR. 2. **`openclaw` service is missing a `restart` policy** — add `restart: unless-stopped` or `restart: always`. 3. **`coollabsio/openclaw-browser:latest`** — the `browser` service uses an unpinned `latest` tag. Pin it to a specific version to match the `openclaw` service version and update `meta.json` accordingly. **Context Used:** Rule from `dashboard` - AGENTS.md ([source](https://app.greptile.com/review/custom-context?memory=09330bde-2058-497c-9c64-ceae637fb5b2)) </details> <!-- /greptile_failed_comments --> <sub>Last reviewed commit: d157cef</sub> > Greptile also left **3 inline comments** on this PR. **Context used:** - Rule from `dashboard` - AGENTS.md ([source](https://app.greptile.com/review/custom-context?memory=09330bde-2058-497c-9c64-ceae637fb5b2)) <!-- /greptile_comment --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-16 11:32:32 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/templates#1273