feat: add Fider feedback collection platform template#728
feat: add Fider feedback collection platform template#728ImBIOS wants to merge 4 commits intoDokploy:canaryfrom
Conversation
Add Fider, an open-source feedback collection platform, to the blueprints. Includes PostgreSQL 17 database and configurable SMTP email settings. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
There was a problem hiding this comment.
Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.
built with Refined Cloudflare Pages Action⚡ Cloudflare Pages Deployment
|
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Adds a new Dokploy blueprint for deploying Fider (open-source feedback collection platform) with a PostgreSQL database, and updates meta.json to include the new template (plus a strapi entry move consistent with dedupe/sort).
Changes:
- Add
blueprints/fider/with Docker Compose + Dokploytemplate.tomlconfiguration and logo. - Register the Fider template in
meta.json. - Reposition the existing
strapientry (consistent with sorted/dedupedmeta.jsonoutput).
Reviewed changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| meta.json | Adds fider metadata entry; also reflects a sorted/deduped move of strapi. |
| blueprints/fider/docker-compose.yml | Introduces Fider + PostgreSQL services for the new template. |
| blueprints/fider/template.toml | Defines domain + env var wiring (DB password, JWT secret, SMTP settings). |
| blueprints/fider/fider.png | Adds the template logo asset referenced by meta.json. |
| version: "3.8" | ||
| services: | ||
| db: | ||
| image: postgres:17 |
There was a problem hiding this comment.
postgres:17 is a floating tag (will change as new 17.x releases ship). Repo template guidelines recommend pinning Docker images to a specific version (ideally patch, or a digest) to avoid unexpected breaking changes during deploys.
| image: postgres:17 | |
| image: postgres:17.2 |
| - POSTGRES_DB=fider | ||
|
|
||
| app: | ||
| image: getfider/fider:stable |
There was a problem hiding this comment.
getfider/fider:stable is a floating tag; this makes the template non-reproducible and can break over time. Please pin to a specific released image tag (or digest) and keep meta.json.version aligned with that pinned version.
| image: getfider/fider:stable | |
| image: getfider/fider:0.22.0 |
blueprints/fider/template.toml
Outdated
| host = "${main_domain}" | ||
|
|
||
| [config.env] | ||
| BASE_URL = "https://${main_domain}" |
There was a problem hiding this comment.
Template guidelines prefer URL env vars to default to HTTP unless the application explicitly requires HTTPS. Using https://${main_domain} here may be incorrect for setups where TLS is terminated by the Dokploy proxy; consider switching to http://${main_domain} unless Fider requires HTTPS in BASE_URL.
| BASE_URL = "https://${main_domain}" | |
| BASE_URL = "http://${main_domain}" |
| { | ||
| "id": "fider", | ||
| "name": "Fider", | ||
| "version": "stable", |
There was a problem hiding this comment.
meta.json.version is set to stable, which doesn’t uniquely identify a reproducible release. If you pin the Docker image tag for Fider, update this field to the corresponding concrete version to keep templates deterministic.
| "version": "stable", | |
| "version": "0.22.0", |
- Pin postgres to 17.2 - Pin fider to v0.32.0 - Use http:// for BASE_URL (TLS handled by Dokploy) - Update meta.json version to 0.32.0 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
| @@ -0,0 +1,27 @@ | |||
| [variables] | |||
| main_domain = "${domain}" | |||
| postgres_password = "${password:16}" | |||
There was a problem hiding this comment.
postgres_password is generated with the ${password:...} helper, which can include reserved URL characters (e.g., @, #). Since this value is embedded in DATABASE_URL in docker-compose, the resulting connection string can be syntactically invalid. Consider switching the DB password generator to a URL-safe helper (e.g., a hex hash) or otherwise ensure the password is percent-encoded before being placed into the URL.
| postgres_password = "${password:16}" | |
| postgres_password = "${uuid}" |
| app: | ||
| image: getfider/fider:v0.32.0 | ||
| restart: unless-stopped | ||
| ports: |
There was a problem hiding this comment.
This compose file publishes the container port using ports. Repo guidance recommends not publishing ports in templates (use expose or rely on Dokploy domain mapping) to avoid host port conflicts and unintended direct exposure. Consider removing ports here or replacing it with expose: - 3000.
| ports: | |
| expose: |
| host = "${main_domain}" | ||
|
|
||
| [config.env] | ||
| BASE_URL = "http://${main_domain}" |
There was a problem hiding this comment.
BASE_URL is hardcoded to use the http:// scheme, which will cause the application to generate links (and potentially cookies) over plain HTTP, exposing credentials and JWT-based sessions to interception or tampering on the network. An attacker observing traffic when users follow these links could steal login data or hijack sessions. This should use https:// for public deployments (or at least default to HTTPS and only allow HTTP explicitly for non-production use).
Reverting changes that were inconsistent with other templates: - postgres:17.2 → postgres:17 (codebase uses floating tags) - fider:v0.32.0 → fider:stable (codebase uses :stable tags) - meta.json version: "0.32.0" → "stable" (codebase pattern) Kept BASE_URL=http:// as it matches Fider official docs. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Summary
Issue Reference
Closes #727
Test Plan