Commit Graph

610 Commits

Author SHA1 Message Date
Mauricio Siu
9d17e6bf8a New Templates (#690)
* feat(librechat): add LibreChat blueprint with compose, toml, metadata, links and tags

* fix: rename templates to template.toml

* fix(librechat): rename api service to librechat in docker-compose.yml

* Update blueprints/librechat/template.toml

* Update blueprints/librechat/template.toml

* fix(librechat): add version under [config] and remove stray [config.mounts] header

* fix(librechat): remove predefined persistent volume mounts from template.toml

* docs(librechat): add authentication reference link to docker-compose.yml

* feat: add Rote template

- Add Rote deployment template with frontend, backend, and PostgreSQL services
- Configure domain routing for frontend (port 80) and backend (port 3000)
- Set up automatic password generation and environment variables
- Use latest image tag by default
- Add logo and metadata to meta.json

* fix: process meta.json to fix formatting and sorting

* Update GitHub workflows to target 'canary' branch for meta validation

* Update pnpm-lock.yaml to upgrade various dependencies, including '@codemirror/autocomplete', '@radix-ui/react-dialog', and React packages to their latest versions. This includes updates to '@types/react' and '@types/react-dom' for improved compatibility and performance.

* Enhance GitHub workflows: add production deployment configuration and target 'canary' branch for pull requests.

* Refactor GitHub workflow: comment out build preview steps for clarity and future modifications.

* Remove unnecessary blank line in deploy-preview.yml for improved readability.

* Refactor GitHub workflow: uncomment build preview steps for improved deployment process and clarity.

* Update template.toml (#555)

* Update template.toml

* Update template.toml

* Update template.toml

* fix: change VITE_API_BASE to http:// for traefik.me compatibility

* changed image from sknnr/enshrouded-dedicated-server to mornedhels/enshrouded-server for autoupdate and easier config

* Add Openinary Template (#567)

* feat: add Openinary template

* feat: update Openinary configuration to support ALLOWED_ORIGIN and refactor domain variable

* fix: correct DEFAULT_DOMAIN environment variable reference in docker-compose.yml (#562)

* add rustfs template (#568)

* feat: add pull request template for improved contribution guidelines

* fix: update pull request template to clarify issue closing keywords

* feat: add validation scripts and configuration for Docker Compose and template files

- Introduced a GitHub Actions workflow to validate Docker Compose files and template.toml on pull requests.
- Added helper functions for generating random values and processing variables in templates.
- Implemented validation scripts for checking the structure, syntax, and best practices of Docker Compose and template files.
- Created necessary TypeScript types and configuration files for the build scripts.

* Add Passbolt template blueprint to Dokploy templates (#376)

* feat(templates): add Passbolt blueprint for Dokploy
- Add docker-compose.yml defining services for Passbolt and MariaDB
- Create template.toml with configurable domain, email, and database credentials
- Add meta.json with metadata, tags, and link to logo

* fix(meta): sort meta.json entries

* fix: passbolt template had several issues that broke deployment

- env variables were using old array format, changed to new table format
- mariadb healthcheck was broken (wrong command for mariadb 11)
- missing volume mounts for gpg keys, jwt tokens, and database
- setup instructions weren't visible to users, moved to docker-compose
- email config had circular references causing warnings
- tested admin user creation and confirmed working

everything works now, fully tested

* Update blueprints/passbolt/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: Add Kokoro TTS FastAPI template (#353) (#403)

* feat: Add Kokoro TTS FastAPI template (#353)  - Add CPU-optimized docker-compose.yml with source build - Add GPU-optimized docker-compose-gpu.yml for NVIDIA support - Add comprehensive template.toml with OpenAI-compatible API docs - Add kokoro-tts.svg logo and meta.json entry - Support streaming audio, timestamps, and multi-language TTS - Resolves #353

* updated the meta.json for the build errors

* removed the docker-compose-gpu.yml file

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* chore: remove package-lock.json file from the app directory

* chore: update Tolgee to latest version and fix SMTP config typo (#432)

* chore: update Tolgee to latest version and fix SMTP config typo

* Update docker-compose.yml

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix: improve Docker Compose validation workflow to handle subshell issues

- Converted the handling of COMPOSE_FILES from a pipe to an array to ensure error propagation in the parent shell.
- Updated the loop to iterate over the array for better reliability in the validation process.

* refactor: enhance Docker Compose validation workflow to improve error handling

- Replaced the pipe with an array to handle directory names, ensuring that errors within the loop propagate correctly to the parent shell.
- Updated the loop structure for better reliability in processing the directories.

* Feat: Add parseable (#460)

* Add parseable

* Update docker-compose.yml

* Update docker-compose.yml

* Update blueprints/parseable/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* feat: add ChirpStack LoRaWAN Network Server template (#486)

* feat: add ChirpStack LoRaWAN Network Server template

  Add complete ChirpStack v4 template with:
  - Main ChirpStack server with web UI
  - UDP and Basics Station gateway bridges
  - REST API interface
  - PostgreSQL database with PostGIS extensions
  - Redis cache
  - Mosquitto MQTT broker

Default configuration for EU868 region with secure random credentials. Supports all LoRaWAN frequency bands globally.

* fix(chirpstack): use original configurations from chirpstack-docker repo

Update template.toml to use exact configuration files from the
chirpstack-docker repository instead of simplified versions:

- Use original chirpstack.toml with all 15 enabled regions
- Use original gateway bridge configuration with documentation links
- Use complete Basics Station EU868 config with frequency plans
- Keep original Mosquitto and PostgreSQL initialization scripts

Template size increased from 131 to 219 lines (4.7KB) to include
comprehensive default configurations that match the official setup.

* feat: add all 38 region configuration files

* fix(chirpstack): add volume mounts to expose config files to containers

* fix(chirpstack): remove read-only flag

* fix(chirpstack): correct file paths for configuration mounts in docker-compose and template files

* fix: update volume paths to be on correct directory level

* fix: configure template for dokploy-network with proper DNS resolution

- Add dokploy-network configuration to docker-compose.yml
- Replace environment variable placeholders with actual service hostnames
- Change PostgreSQL DSN from $POSTGRESQL_HOST to postgres
- Change Redis server from $REDIS_HOST to redis
- Replace $MQTT_BROKER_HOST with mosquitto in all 39 region configurations

These changes ensure Docker DNS resolution works correctly by:
- Using dokploy-network (overlay) instead of bridge network
- Using service names directly in TOML config files (TOML doesn't expand env vars)
- Enabling proper service discovery between containers

This resolves DNS resolution failures that caused ChirpStack to fail connecting
to PostgreSQL and MQTT services during deployment.

* fix: add missing network configurations for all services in docker-compose

* feat: add internal services to config.domains for proper network configuration

* Update docker-compose.yml

* fix: enhance domain validation in template validator

- Updated the TemplateValidator to ensure that if the 'host' field is provided, it must be a valid string.
- Added comments to clarify that 'host' is optional for internal services.

* refactor: remove redundant host validation in template validator

- Removed the validation for the 'host' field in the TemplateValidator, as it is optional for internal services and does not require a type check if not provided.

* refactor: remove internal service domain configurations from template

- Eliminated the domain configurations for internal services (Postgres, Redis, Mosquitto) from the template.toml file, streamlining the configuration for better clarity and maintainability.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* Update section title from 'Suggestions' to 'Requirements'

* Feat : Add MCSManager template support (#521) (#522)

* feat: Add MCSManager template support (#521)

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: Add MediaCMS template (#524)

* Feat : Add Quant-Ux template -#173 (#525)

* Feat : Add Quant-Ux template -#173

* Remove extra newline in docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix(rustdesk): use explicit ports, use port 21118 on hbbs instead of hbbr (#526)

* fix: use explicit ports, use port 21118 on hbbs instead of hbbr

* fix: whitespace character in rustdesk

* feat: Add anytype template (#527)

* add anytype template

* sort

* Update name field for Anytype in meta.json

* Update meta.json

* Update docker-compose.yml

* Update blueprints/anytype/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* refactor: remove dokploy-network configurations from multiple docker-compose files

- Removed the external dokploy-network configuration from various services' docker-compose.yml files to streamline network management.
- This change simplifies the setup and ensures consistency across blueprints.

* chore: upgrade Infisical from v0.90.1 to v0.135.0 (#529)

* chore: upgrade Infisical from v0.90.1 to v0.135.0

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix: update pull request template link for clarity

- Changed the link in the pull request template from 'general suggestions' to 'general requirements' to better reflect the content and ensure users follow the correct guidelines when creating templates.

* chore: add section for screenshots or videos in pull request template

- Introduced a new section in the pull request template to encourage contributors to include screenshots or videos, enhancing the clarity and context of their submissions.

* Feat : Add MuleSoft ESB Runtime  Template (#498)

* added the mulesoft esb template

* updated the compose and the meta.json

* feat(mulesoft-esb): update image and add dynamic env configuration  - Updated image to hari1367709/mule-esb:latest - Added dynamic HTTP_PORT for runtime port configuration - Added MULE_VERSION environment variable for Mule ESB version selection

* updated the meta.json to use the version as latest

* added a comment line to the template file

* updated the mule runtime image

* fix(mulesoft-esb): update ports configuration to follow guidelines

* updated the port to use the env(HTTP_PORT)

* Update docker-compose.yml

* Update docker-compose.yml

* Update blueprints/mulesoft-esb/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat(blueprint): update trmnl-byos-laravel template (#533)

* feat(blueprint): update trmnl-byos-laravel template

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat(blueprint): peerdb template (#579)

* feat(blueprint): initial attempt at peerdb template

* fix: entrypoint and healthcheck

* fix: entrypoint

* fix: temporarily remove network

* fix: temporal port

* chore: remove 36987 for minio

* fix: remove peerdb 9900 port exposure

* fix: port for console

* fix: minio env fix

* fix: expose peerdb and minio to dokploy network

* fix(peerdb): add defaults

* fix: remove extra hosts

* fix: remove network entries

* fix: use consistent environment variables

* feat: add Bluesky PDS template (#542)

* feat: Bluesky PDS template

* chore: add bluesky pds svg

* chore: metadata for bluesky pds

* yaml > yml

* pnpm lock

* fix: correct rotation key config

* fix volumes

* fix: volumes in the pds compose

* define volumes in compose

* fix: 32 bit rotation key

* create pds.env correctly

* some extra fixes

* more extra fixes

* a blank line

* update pnpm lock

* Add dokploy-prom-monitoring-extension template with comprehensive tests and documentation (#548)

* Add dokploy-prom-monitoring-extension template with comprehensive tests and documentation

* Fix METRICS_CONFIG environment variable: use single-line JSON format

* Fix template.toml: use correct [config.env] syntax for environment variables

* Fix docker-compose.yml: add env_file reference to load environment variables

* Delete blueprints/dokploy-prom-monitoring-extension/README.md

* Delete test-dokploy-prom-monitoring-extension.sh

---------

Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: improve RustDesk template configuration (#571)

* feat: improve RustDesk template configuration

- Add comprehensive environment variables for RustDesk server
- Add RELAY_HOST, API_SERVER, ID_SERVER, and ENCRYPTION_KEY variables
- Follow Dokploy best practices (no container_name, proper port format)
- Use restart: unless-stopped policy
- Add encryption key generation with password helper

* fix: use explicit port mapping for RustDesk services

RustDesk requires explicit port bindings (host:container format) to function properly. The service uses specific ports for:
- 21115-21116 (TCP/UDP): hbbs service for ID and NAT traversal
- 21117-21119 (TCP): hbbr relay service

Without explicit port mapping, RustDesk clients cannot establish connections to the server.

This is an exception to Dokploy's general port guidelines due to RustDesk's specific networking requirements.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: add Mumble voice chat server template (#572)

* feat: add Mumble voice chat server template

- Add Mumble VoIP server blueprint with docker-compose.yml
- Configure environment variables for superuser password, welcome text, and max users
- Add template.toml with auto-generated secure password
- Follow Dokploy best practices (no container_name, proper port format)
- Add Mumble metadata to meta.json with proper tags
- Support for TCP and UDP on port 64738

* Update template.toml

* fix: correct JSON formatting in meta.json for Mumble template entry

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* fix: update WireGuard Easy template for proper functionality (#573)

* fix: update WireGuard Easy template for proper functionality

- Changed to named volume (etc_wireguard) instead of host path mount
- Added explicit port mappings (51820:51820/udp, 51821:51821/tcp) required for WireGuard
- Updated environment variables to use correct WG_HOST and PASSWORD format
- Added all required WireGuard environment variables:
  - WG_PORT, PORT, WG_MTU, WG_DEFAULT_DNS, WG_ALLOWED_IPS
  - WG_POST_UP/WG_POST_DOWN for iptables rules
- Added NET_RAW capability for proper network operations
- Simplified template.toml to use WIREGUARD_HOST and WIREGUARD_PASSWORD
- Removed explicit networks config to enable Dokploy's isolated deployment
- Template now works with Dokploy's automatic network isolation

This configuration has been tested and confirmed working with isolated deployment enabled.

* Update template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* add: restart policy to MinIO service (#576)

restart: unless-stopped is a Docker restart policy that automatically restarts a container if it stops due to an error or Docker daemon restart

* Updating copilot instructions.md and AGENTS.md (#452)

* docs: add copilot instructions for project development

Added comprehensive documentation file (.github/copilot-instructions.md) that provides detailed guidance on the Dokploy Open Source Templates project structure, development workflow, and conventions. The document covers the project overview, key files and directories, development workflow for adding/updating templates, local development setup, CI/CD processes, and established conventions and patterns. This documentation will help onboard new contributors and ensure consistent development practices across the project.

* docs(copilot-instructions): enhance project overview and development guide

Updated copilot instructions to reflect expanded app capabilities (200+ apps, TypeScript integration, Fuse.js search) and detailed processes for templates, local dev, and CI/CD for improved clarity and accuracy.

* refactor: remove frontend development instructions from AGENTS.md and update contributing guidelines

- Removed frontend development commands from AGENTS.md to streamline the document.
- Updated CONTRIBUTING.md by removing the recommendation to set `restart: unless-stopped` for services.

---------

Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* Add trailbase template (#590)

* Add trailbase

* Add comment on mounting local directory

* Update meta.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: openpanel and migrate to v2 (#594)

* refactor: update docker-compose.yml to include version and restart policy (#599)

* feat(blueprint): mage ai template (#601)

* feat(blueprint): template for mage-ai

* fix: add healthcheck for mage-ai

* docs: update copilot instructions to emphasize version pinning in docker-compose.yml

Clarified the importance of pinning image versions in docker-compose.yml and explicitly stated to avoid using the `latest` tag to prevent potential issues with template functionality when upstream images change.

* refactor: enhance Docker Compose validation workflow

Updated the GitHub Actions workflow for validating Docker Compose files by streamlining the detection of changed blueprints and improving the validation process. Removed redundant steps and consolidated the validation of docker-compose.yml and template.toml files into a more efficient structure. Added clearer output messages for validation results and ensured that best practices are checked for each blueprint. This refactor aims to improve maintainability and clarity in the CI/CD process.

* fix: update zitadel default instance features (#544)

* Add Reactive Resume template (#603)

* Initial plan

* Add Reactive Resume template with docker-compose, template.toml, and meta.json entry

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Fix MinIO storage path alignment between template.toml and docker-compose.yml

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Update docker-compose.yml

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* [WIP] Fix mounted prometheus.yml file not working (#605)

* Initial plan

* Fix Prometheus mounted prometheus.yml file by adding volume mount

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Update blueprints/prometheus/template.toml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* docs: update copilot instructions to enforce open source requirement

Added a clear requirement stating that all services must be open source and only applications with open-source licenses (e.g., MIT, Apache, GPL, AGPL) are allowed. This update aims to ensure compliance and maintain the integrity of the project.

* Fix Cap.so template MinIO deployment failure (#604)

* Initial plan

* Fix Cap.so MinIO image to use official quay.io image

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Fix MinIO healthcheck to use curl instead of mc

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Update .gitignore

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Fix Discourse template manifest error - update to bitnamilegacy/discourse:3.5.0 (#606)

* Initial plan

* Fix Discourse template by updating to bitnamilegacy/discourse:3.5.0

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Remove pull request trigger from deploy-preview workflow

* Enhance copilot instructions by adding verification steps for Docker images and clarifying URL variable usage. Emphasize the importance of verifying image existence before committing to prevent deployment failures.

* Add Easy!Appointments template (#608)

* Initial plan

* Add Easyappointments template with docker-compose, template.toml, and meta.json entry

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Update blueprints/easyappointments/template.toml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update template.toml

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Add Dolibarr ERP & CRM template (#610)

* Initial plan

* Add Dolibarr ERP & CRM template

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Update template.toml

* Update blueprints/dolibarr/docker-compose.yml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: add Syncthing Template (#636)

* Adiciona template do Syncthing com arquivos de configuração e ícone

* Remove versão do Docker Compose do template do Syncthing

* Update Umami to version v2.20.2 (#641)

* Feat : Add InstantDB template (#224) (#530)

* feat: add InstantDB template

* added the server service also

* removed the external network

* Update docker-compose.yml

* Update blueprints/instantdb/docker-compose.yml

* Update blueprints/instantdb/docker-compose.yml

* Update docker-compose.yml

* Update blueprints/instantdb/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* [New Template] Added Lavalink template for dokploy (#535)

* Add initial Lavalink configuration template

* Added lavalink.svg logo

* Create docker-compose.yml for Lavalink setup

Add Docker Compose configuration for Lavalink service.

* Modify healthcheck interval in docker-compose.yml

Increased healthcheck interval from 10s to 100s.

* Add Lavalink metadata to meta.json

Added metadata for Lavalink audio sending node.

* Update server_port variable to use ${port}

* Change server port variable to randomPort

* Change port variable to randomPort in template.toml

* Change port variable in template.toml

* Update server port in template.toml

* Fix formatting in template.toml for server config

* style: Reformat lavalink entry in meta.json.

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* chore(blueprint): update Appwrite services to v1.8 (#383)

* Update Appwrite version docker images and environment variables

* Add separate domains for functions and sites, update environment variables, replace insecure default passwords

* Update Appwrite version from 1.6.1 to 1.7.4 in `meta.json`

* Fix envs and update domains

* Add missing volume mounts for sites

* Fix config file syntax

* Update runtimes network configuration in template.toml

* Update Appwrite to 1.8

* Update appwrite image version to 1.8.0

* Add logging configuration to docker-compose

* New Templates (#586)

* feat(librechat): add LibreChat blueprint with compose, toml, metadata, links and tags

* fix: rename templates to template.toml

* fix(librechat): rename api service to librechat in docker-compose.yml

* Update blueprints/librechat/template.toml

* Update blueprints/librechat/template.toml

* fix(librechat): add version under [config] and remove stray [config.mounts] header

* fix(librechat): remove predefined persistent volume mounts from template.toml

* docs(librechat): add authentication reference link to docker-compose.yml

* feat: add Rote template

- Add Rote deployment template with frontend, backend, and PostgreSQL services
- Configure domain routing for frontend (port 80) and backend (port 3000)
- Set up automatic password generation and environment variables
- Use latest image tag by default
- Add logo and metadata to meta.json

* fix: process meta.json to fix formatting and sorting

* Update GitHub workflows to target 'canary' branch for meta validation

* Update pnpm-lock.yaml to upgrade various dependencies, including '@codemirror/autocomplete', '@radix-ui/react-dialog', and React packages to their latest versions. This includes updates to '@types/react' and '@types/react-dom' for improved compatibility and performance.

* Enhance GitHub workflows: add production deployment configuration and target 'canary' branch for pull requests.

* Refactor GitHub workflow: comment out build preview steps for clarity and future modifications.

* Remove unnecessary blank line in deploy-preview.yml for improved readability.

* Refactor GitHub workflow: uncomment build preview steps for improved deployment process and clarity.

* Update template.toml (#555)

* Update template.toml

* Update template.toml

* Update template.toml

* fix: change VITE_API_BASE to http:// for traefik.me compatibility

* changed image from sknnr/enshrouded-dedicated-server to mornedhels/enshrouded-server for autoupdate and easier config

* Add Openinary Template (#567)

* feat: add Openinary template

* feat: update Openinary configuration to support ALLOWED_ORIGIN and refactor domain variable

* fix: correct DEFAULT_DOMAIN environment variable reference in docker-compose.yml (#562)

* add rustfs template (#568)

* feat: add pull request template for improved contribution guidelines

* fix: update pull request template to clarify issue closing keywords

* feat: add validation scripts and configuration for Docker Compose and template files

- Introduced a GitHub Actions workflow to validate Docker Compose files and template.toml on pull requests.
- Added helper functions for generating random values and processing variables in templates.
- Implemented validation scripts for checking the structure, syntax, and best practices of Docker Compose and template files.
- Created necessary TypeScript types and configuration files for the build scripts.

* Add Passbolt template blueprint to Dokploy templates (#376)

* feat(templates): add Passbolt blueprint for Dokploy
- Add docker-compose.yml defining services for Passbolt and MariaDB
- Create template.toml with configurable domain, email, and database credentials
- Add meta.json with metadata, tags, and link to logo

* fix(meta): sort meta.json entries

* fix: passbolt template had several issues that broke deployment

- env variables were using old array format, changed to new table format
- mariadb healthcheck was broken (wrong command for mariadb 11)
- missing volume mounts for gpg keys, jwt tokens, and database
- setup instructions weren't visible to users, moved to docker-compose
- email config had circular references causing warnings
- tested admin user creation and confirmed working

everything works now, fully tested

* Update blueprints/passbolt/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: Add Kokoro TTS FastAPI template (#353) (#403)

* feat: Add Kokoro TTS FastAPI template (#353)  - Add CPU-optimized docker-compose.yml with source build - Add GPU-optimized docker-compose-gpu.yml for NVIDIA support - Add comprehensive template.toml with OpenAI-compatible API docs - Add kokoro-tts.svg logo and meta.json entry - Support streaming audio, timestamps, and multi-language TTS - Resolves #353

* updated the meta.json for the build errors

* removed the docker-compose-gpu.yml file

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* chore: remove package-lock.json file from the app directory

* chore: update Tolgee to latest version and fix SMTP config typo (#432)

* chore: update Tolgee to latest version and fix SMTP config typo

* Update docker-compose.yml

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix: improve Docker Compose validation workflow to handle subshell issues

- Converted the handling of COMPOSE_FILES from a pipe to an array to ensure error propagation in the parent shell.
- Updated the loop to iterate over the array for better reliability in the validation process.

* refactor: enhance Docker Compose validation workflow to improve error handling

- Replaced the pipe with an array to handle directory names, ensuring that errors within the loop propagate correctly to the parent shell.
- Updated the loop structure for better reliability in processing the directories.

* Feat: Add parseable (#460)

* Add parseable

* Update docker-compose.yml

* Update docker-compose.yml

* Update blueprints/parseable/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* feat: add ChirpStack LoRaWAN Network Server template (#486)

* feat: add ChirpStack LoRaWAN Network Server template

  Add complete ChirpStack v4 template with:
  - Main ChirpStack server with web UI
  - UDP and Basics Station gateway bridges
  - REST API interface
  - PostgreSQL database with PostGIS extensions
  - Redis cache
  - Mosquitto MQTT broker

Default configuration for EU868 region with secure random credentials. Supports all LoRaWAN frequency bands globally.

* fix(chirpstack): use original configurations from chirpstack-docker repo

Update template.toml to use exact configuration files from the
chirpstack-docker repository instead of simplified versions:

- Use original chirpstack.toml with all 15 enabled regions
- Use original gateway bridge configuration with documentation links
- Use complete Basics Station EU868 config with frequency plans
- Keep original Mosquitto and PostgreSQL initialization scripts

Template size increased from 131 to 219 lines (4.7KB) to include
comprehensive default configurations that match the official setup.

* feat: add all 38 region configuration files

* fix(chirpstack): add volume mounts to expose config files to containers

* fix(chirpstack): remove read-only flag

* fix(chirpstack): correct file paths for configuration mounts in docker-compose and template files

* fix: update volume paths to be on correct directory level

* fix: configure template for dokploy-network with proper DNS resolution

- Add dokploy-network configuration to docker-compose.yml
- Replace environment variable placeholders with actual service hostnames
- Change PostgreSQL DSN from $POSTGRESQL_HOST to postgres
- Change Redis server from $REDIS_HOST to redis
- Replace $MQTT_BROKER_HOST with mosquitto in all 39 region configurations

These changes ensure Docker DNS resolution works correctly by:
- Using dokploy-network (overlay) instead of bridge network
- Using service names directly in TOML config files (TOML doesn't expand env vars)
- Enabling proper service discovery between containers

This resolves DNS resolution failures that caused ChirpStack to fail connecting
to PostgreSQL and MQTT services during deployment.

* fix: add missing network configurations for all services in docker-compose

* feat: add internal services to config.domains for proper network configuration

* Update docker-compose.yml

* fix: enhance domain validation in template validator

- Updated the TemplateValidator to ensure that if the 'host' field is provided, it must be a valid string.
- Added comments to clarify that 'host' is optional for internal services.

* refactor: remove redundant host validation in template validator

- Removed the validation for the 'host' field in the TemplateValidator, as it is optional for internal services and does not require a type check if not provided.

* refactor: remove internal service domain configurations from template

- Eliminated the domain configurations for internal services (Postgres, Redis, Mosquitto) from the template.toml file, streamlining the configuration for better clarity and maintainability.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* Update section title from 'Suggestions' to 'Requirements'

* Feat : Add MCSManager template support (#521) (#522)

* feat: Add MCSManager template support (#521)

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: Add MediaCMS template (#524)

* Feat : Add Quant-Ux template -#173 (#525)

* Feat : Add Quant-Ux template -#173

* Remove extra newline in docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix(rustdesk): use explicit ports, use port 21118 on hbbs instead of hbbr (#526)

* fix: use explicit ports, use port 21118 on hbbs instead of hbbr

* fix: whitespace character in rustdesk

* feat: Add anytype template (#527)

* add anytype template

* sort

* Update name field for Anytype in meta.json

* Update meta.json

* Update docker-compose.yml

* Update blueprints/anytype/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* refactor: remove dokploy-network configurations from multiple docker-compose files

- Removed the external dokploy-network configuration from various services' docker-compose.yml files to streamline network management.
- This change simplifies the setup and ensures consistency across blueprints.

* chore: upgrade Infisical from v0.90.1 to v0.135.0 (#529)

* chore: upgrade Infisical from v0.90.1 to v0.135.0

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix: update pull request template link for clarity

- Changed the link in the pull request template from 'general suggestions' to 'general requirements' to better reflect the content and ensure users follow the correct guidelines when creating templates.

* chore: add section for screenshots or videos in pull request template

- Introduced a new section in the pull request template to encourage contributors to include screenshots or videos, enhancing the clarity and context of their submissions.

* Feat : Add MuleSoft ESB Runtime  Template (#498)

* added the mulesoft esb template

* updated the compose and the meta.json

* feat(mulesoft-esb): update image and add dynamic env configuration  - Updated image to hari1367709/mule-esb:latest - Added dynamic HTTP_PORT for runtime port configuration - Added MULE_VERSION environment variable for Mule ESB version selection

* updated the meta.json to use the version as latest

* added a comment line to the template file

* updated the mule runtime image

* fix(mulesoft-esb): update ports configuration to follow guidelines

* updated the port to use the env(HTTP_PORT)

* Update docker-compose.yml

* Update docker-compose.yml

* Update blueprints/mulesoft-esb/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat(blueprint): update trmnl-byos-laravel template (#533)

* feat(blueprint): update trmnl-byos-laravel template

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat(blueprint): peerdb template (#579)

* feat(blueprint): initial attempt at peerdb template

* fix: entrypoint and healthcheck

* fix: entrypoint

* fix: temporarily remove network

* fix: temporal port

* chore: remove 36987 for minio

* fix: remove peerdb 9900 port exposure

* fix: port for console

* fix: minio env fix

* fix: expose peerdb and minio to dokploy network

* fix(peerdb): add defaults

* fix: remove extra hosts

* fix: remove network entries

* fix: use consistent environment variables

* feat: add Bluesky PDS template (#542)

* feat: Bluesky PDS template

* chore: add bluesky pds svg

* chore: metadata for bluesky pds

* yaml > yml

* pnpm lock

* fix: correct rotation key config

* fix volumes

* fix: volumes in the pds compose

* define volumes in compose

* fix: 32 bit rotation key

* create pds.env correctly

* some extra fixes

* more extra fixes

* a blank line

* update pnpm lock

* Add dokploy-prom-monitoring-extension template with comprehensive tests and documentation (#548)

* Add dokploy-prom-monitoring-extension template with comprehensive tests and documentation

* Fix METRICS_CONFIG environment variable: use single-line JSON format

* Fix template.toml: use correct [config.env] syntax for environment variables

* Fix docker-compose.yml: add env_file reference to load environment variables

* Delete blueprints/dokploy-prom-monitoring-extension/README.md

* Delete test-dokploy-prom-monitoring-extension.sh

---------

Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: improve RustDesk template configuration (#571)

* feat: improve RustDesk template configuration

- Add comprehensive environment variables for RustDesk server
- Add RELAY_HOST, API_SERVER, ID_SERVER, and ENCRYPTION_KEY variables
- Follow Dokploy best practices (no container_name, proper port format)
- Use restart: unless-stopped policy
- Add encryption key generation with password helper

* fix: use explicit port mapping for RustDesk services

RustDesk requires explicit port bindings (host:container format) to function properly. The service uses specific ports for:
- 21115-21116 (TCP/UDP): hbbs service for ID and NAT traversal
- 21117-21119 (TCP): hbbr relay service

Without explicit port mapping, RustDesk clients cannot establish connections to the server.

This is an exception to Dokploy's general port guidelines due to RustDesk's specific networking requirements.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: add Mumble voice chat server template (#572)

* feat: add Mumble voice chat server template

- Add Mumble VoIP server blueprint with docker-compose.yml
- Configure environment variables for superuser password, welcome text, and max users
- Add template.toml with auto-generated secure password
- Follow Dokploy best practices (no container_name, proper port format)
- Add Mumble metadata to meta.json with proper tags
- Support for TCP and UDP on port 64738

* Update template.toml

* fix: correct JSON formatting in meta.json for Mumble template entry

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* fix: update WireGuard Easy template for proper functionality (#573)

* fix: update WireGuard Easy template for proper functionality

- Changed to named volume (etc_wireguard) instead of host path mount
- Added explicit port mappings (51820:51820/udp, 51821:51821/tcp) required for WireGuard
- Updated environment variables to use correct WG_HOST and PASSWORD format
- Added all required WireGuard environment variables:
  - WG_PORT, PORT, WG_MTU, WG_DEFAULT_DNS, WG_ALLOWED_IPS
  - WG_POST_UP/WG_POST_DOWN for iptables rules
- Added NET_RAW capability for proper network operations
- Simplified template.toml to use WIREGUARD_HOST and WIREGUARD_PASSWORD
- Removed explicit networks config to enable Dokploy's isolated deployment
- Template now works with Dokploy's automatic network isolation

This configuration has been tested and confirmed working with isolated deployment enabled.

* Update template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* add: restart policy to MinIO service (#576)

restart: unless-stopped is a Docker restart policy that automatically restarts a container if it stops due to an error or Docker daemon restart

---------

Co-authored-by: Sunil Shrestha <sunil.shrestha@tekkon.com.np>
Co-authored-by: Rabithua <rabithua@gmail.com>
Co-authored-by: Mauricio Siu <siumauricio@hotmail.com>
Co-authored-by: Scan <103391616+scanash00@users.noreply.github.com>
Co-authored-by: Crackvignoule <kiki.kalagan@gmail.com>
Co-authored-by: florianheysen <39408021+florianheysen@users.noreply.github.com>
Co-authored-by: Thiago MadPin <madpin@gmail.com>
Co-authored-by: BlinkStrike <18644035+BlinkStrike@users.noreply.github.com>
Co-authored-by: M Jupri Amin <127651222+Juupeee@users.noreply.github.com>
Co-authored-by: Harikrishnan Dhanasekaran <harikrishnan@mulecraft.in>
Co-authored-by: Kamil Dzieniszewski <kamil.dzieniszewski@gmail.com>
Co-authored-by: Nick Anderson <nbrookie@gmail.com>
Co-authored-by: lefolalan <alan.lefol@omirion.com>
Co-authored-by: Chris <31969757+ChrisvanChip@users.noreply.github.com>
Co-authored-by: kipavy <88386090+kipavy@users.noreply.github.com>
Co-authored-by: Benjamin Nussbaum <bnussbau@users.noreply.github.com>
Co-authored-by: Khiet Tam Nguyen <86177399+nktnet1@users.noreply.github.com>
Co-authored-by: Vidhya LKG for IT <24915474+VidhyaSanjeevi@users.noreply.github.com>
Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Muzaffer Kadir YILMAZ <34358176+muzafferkadir@users.noreply.github.com>
Co-authored-by: Jemg <murksopps@gmail.com>

* Remove `container_name` from all containers

* Remove expliced networks

* Update blueprints/appwrite/docker-compose.yml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update password variables to use 32-character length

* Update Appwrite description and tags in meta.json

* Fix JSON formatting in meta.json by adding missing closing bracket

* Fix formatting in meta.json by removing trailing spaces in tags array

* Add missing SMS and Backblaze storage configuration options in template.toml

* Update docker-compose.yml

---------

Co-authored-by: Pascal Oberbeck <pascal.oberbeck@paperlesswork.de>
Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Sunil Shrestha <sunil.shrestha@tekkon.com.np>
Co-authored-by: Rabithua <rabithua@gmail.com>
Co-authored-by: Mauricio Siu <siumauricio@hotmail.com>
Co-authored-by: Scan <103391616+scanash00@users.noreply.github.com>
Co-authored-by: Crackvignoule <kiki.kalagan@gmail.com>
Co-authored-by: florianheysen <39408021+florianheysen@users.noreply.github.com>
Co-authored-by: Thiago MadPin <madpin@gmail.com>
Co-authored-by: BlinkStrike <18644035+BlinkStrike@users.noreply.github.com>
Co-authored-by: M Jupri Amin <127651222+Juupeee@users.noreply.github.com>
Co-authored-by: Harikrishnan Dhanasekaran <harikrishnan@mulecraft.in>
Co-authored-by: Kamil Dzieniszewski <kamil.dzieniszewski@gmail.com>
Co-authored-by: Nick Anderson <nbrookie@gmail.com>
Co-authored-by: lefolalan <alan.lefol@omirion.com>
Co-authored-by: Chris <31969757+ChrisvanChip@users.noreply.github.com>
Co-authored-by: kipavy <88386090+kipavy@users.noreply.github.com>
Co-authored-by: Benjamin Nussbaum <bnussbau@users.noreply.github.com>
Co-authored-by: Khiet Tam Nguyen <86177399+nktnet1@users.noreply.github.com>
Co-authored-by: Vidhya LKG for IT <24915474+VidhyaSanjeevi@users.noreply.github.com>
Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Muzaffer Kadir YILMAZ <34358176+muzafferkadir@users.noreply.github.com>
Co-authored-by: Jemg <murksopps@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* feat: emqx template (MQTT Broker) (#556)

* feat: template for emqx

* chore: process meta

* fix: use websocket on port 443 instead of 8084

* docs: improve comments for emqx template

* fix: use emqx service name

* fix: use dummy domain instead of traefik

* fix: explicitly list dokplok-network

* fix(emqx): restart unless stopped

* fix(emqx): add healthcheck

* Dokploy Deployment for Mautic 5 (#564)

* first draft

* second

* try 3

* 4

* Update docker-compose.yml

* Update template.toml

* Enhance healthchecks and service dependencies in Docker Compose

Updated healthcheck configurations for Mautic and MySQL services to improve service reliability. Added conditions to ensure services wait for dependencies to be healthy before starting.

* Update Mautic docker-compose with health checks and roles

* fix: searxng template (#651)

* fix: use major version for openpanel (#680)

* Feat/minepanel template (#657)

* feat: add Minepanel template

* fix: pin images to v1.7.1 and use http for URLs

* fix: remove explicit ports, Dokploy handles proxying

* chore: process and sort meta.json

* fix: consolidate domain variables to main_domain

* fix: add version field to docker-compose.yml

* Add Komari Monitor template with Docker Compose, icon, and metadata (#XXX) (#623)

* Introduce Komari Monitor, a self-hosted server monitoring tool, with its corresponding Docker Compose configuration, icon, and metadata entry.

* Add template.toml for configuration and environment variables.

* Include necessary links for GitHub and documentation.

* Add Misaka Danmu Server template with Docker Compose, icon, and metadata (#624)

* Introduce Misaka Danmu Server, a self-hosted danmaku server for live streaming, with its corresponding Docker Compose configuration, icon, and metadata entry.

* Add template.toml for configuration and environment variables.

* Include necessary links for GitHub and documentation.

* fix: pyrodactyl no longer uses main tag for it's latest release (#626)

* fix: pyrodactyl no longer uses main tag for it's latest release

* Remove custom network settings from docker-compose

Removed custom network configuration from docker-compose.

* Update MariaDB and Pyrodactyl images in Docker Compose

* Add Jenkins blueprint template configuration (#634)

- Created a new TOML configuration file for Jenkins blueprint.
- Defined main domain variable and service configuration for Jenkins.
- Set serviceName to "jenkins" with port 8080 and host as the main domain.

* Update Autobase to version 2.5 (#647)

* Update Autobase to version 2.5

Bump the autobase-console Docker image from version 2.2.0 to 2.5.2 in docker-compose.yml to use the latest features and fixes.

* Update docker-compose.yml

* Update docker-compose.yml

* Update meta.json

* Update Autobase description in meta.json

Revised the Autobase package description to clarify it as a self-hosted DBaaS alternative to cloud-managed databases.

* Add Cloudreve template (#649)

Self-hosted file management and sharing system with multi-cloud storage support.
Includes PostgreSQL and Redis for database and caching.

* Update to Umami 3.0.3 (#668)

* Update Umami version from v2.20.2 to v3.0.3

* Update Umami Docker image to version 3.0.3

* fix: tailscale exitnode authkey env (#669)

* Add qbitwebui (#675)

* Add qBittorrent Web UI template

* Fix healthcheck bug

* Create INSTRUCTIONS.md

* Rename INSTRUCTIONS.md to instructions.md

* feat: add Moltbot template (#683)

* feat: add Moltbot template

Add template for Moltbot - a WhatsApp gateway CLI with Pi RPC agent.

- Uses official ghcr.io/moltbot/moltbot:latest image
- Exposes ports 18789 (gateway) and 18790 (bridge)
- Includes persistent volumes for config and workspace
- Auto-generates gateway token
- Optional Claude AI integration support

Co-Authored-By: Claude <noreply@anthropic.com>

* Update docker-compose.yml

* Enhance Moltbot configuration in docker-compose and template files

- Added CLAWDBOT_GATEWAY_URL and OPENROUTER_API_KEY to docker-compose.yml
- Updated service binding to 'auto' and added init: true for improved service management
- Defined CLAWDBOT_GATEWAY_PORT and CLAWDBOT_BRIDGE_PORT in template.toml
- Included CLAWDBOT_PLUGINS for plugin configuration in template.toml

* Add Moltbot entry to meta.json

- Introduced a new entry for Moltbot, a WhatsApp gateway CLI with Pi RPC agent.
- Included details such as version, description, logo, links, and relevant tags for better discoverability and integration.

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

---------

Co-authored-by: Sunil Shrestha <sunil.shrestha@tekkon.com.np>
Co-authored-by: Rabithua <rabithua@gmail.com>
Co-authored-by: Mauricio Siu <siumauricio@hotmail.com>
Co-authored-by: Scan <103391616+scanash00@users.noreply.github.com>
Co-authored-by: Crackvignoule <kiki.kalagan@gmail.com>
Co-authored-by: florianheysen <39408021+florianheysen@users.noreply.github.com>
Co-authored-by: Thiago MadPin <madpin@gmail.com>
Co-authored-by: BlinkStrike <18644035+BlinkStrike@users.noreply.github.com>
Co-authored-by: M Jupri Amin <127651222+Juupeee@users.noreply.github.com>
Co-authored-by: Harikrishnan Dhanasekaran <harikrishnan@mulecraft.in>
Co-authored-by: Kamil Dzieniszewski <kamil.dzieniszewski@gmail.com>
Co-authored-by: Nick Anderson <nbrookie@gmail.com>
Co-authored-by: lefolalan <alan.lefol@omirion.com>
Co-authored-by: Chris <31969757+ChrisvanChip@users.noreply.github.com>
Co-authored-by: kipavy <88386090+kipavy@users.noreply.github.com>
Co-authored-by: Benjamin Nussbaum <bnussbau@users.noreply.github.com>
Co-authored-by: Khiet Tam Nguyen <86177399+nktnet1@users.noreply.github.com>
Co-authored-by: Vidhya LKG for IT <24915474+VidhyaSanjeevi@users.noreply.github.com>
Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Muzaffer Kadir YILMAZ <34358176+muzafferkadir@users.noreply.github.com>
Co-authored-by: Jemg <murksopps@gmail.com>
Co-authored-by: Jainil Prajapati <86187588+jaainil@users.noreply.github.com>
Co-authored-by: Ye Liu <yeliu84@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Carl-Gerhard Lindesvärd <1987198+lindesvard@users.noreply.github.com>
Co-authored-by: Huy Pham <quochuy.dev@gmail.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Louan Fontenele <louanbastos61@gmail.com>
Co-authored-by: Alexey Fedorov <fedorov2505@yandex.com>
Co-authored-by: 0zul <26915998+0zul@users.noreply.github.com>
Co-authored-by: Pascal Oberbeck <35005267+poberbeck@users.noreply.github.com>
Co-authored-by: Pascal Oberbeck <pascal.oberbeck@paperlesswork.de>
Co-authored-by: Christus Vincent <chrisspeakseh@gmail.com>
Co-authored-by: Huba Tuba <57007485+floxay@users.noreply.github.com>
Co-authored-by: Pablo Moraga Sandoval <72164630+Ketbome@users.noreply.github.com>
Co-authored-by: Firefly <77047823+Yuri-NagaSaki@users.noreply.github.com>
Co-authored-by: Naterfute <106989409+naterfute@users.noreply.github.com>
Co-authored-by: Vitaliy Kukharik <37010174+vitabaks@users.noreply.github.com>
Co-authored-by: aurorarissime <github.delta813@passfwd.com>
Co-authored-by: фырат ёздэн <31664778+fir4tozden@users.noreply.github.com>
Co-authored-by: JoshuaRileyDev <59296334+JoshuaRileyDev@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-29 20:14:06 -06:00
Mauricio Siu
e099095c4c Update instructions.md 2026-01-29 18:43:05 -06:00
Mauricio Siu
de3129be54 Remove instructions.md file as it contained no useful content. 2026-01-29 18:41:18 -06:00
Mauricio Siu
0105994ef4 Create instructions.md 2026-01-29 18:40:54 -06:00
Mauricio Siu
7c3e09101f Create instructions.md 2026-01-29 18:36:56 -06:00
Mauricio Siu
b519c78d13 New Templates & Updates (#685)
* feat(librechat): add LibreChat blueprint with compose, toml, metadata, links and tags

* fix: rename templates to template.toml

* fix(librechat): rename api service to librechat in docker-compose.yml

* Update blueprints/librechat/template.toml

* Update blueprints/librechat/template.toml

* fix(librechat): add version under [config] and remove stray [config.mounts] header

* fix(librechat): remove predefined persistent volume mounts from template.toml

* docs(librechat): add authentication reference link to docker-compose.yml

* feat: add Rote template

- Add Rote deployment template with frontend, backend, and PostgreSQL services
- Configure domain routing for frontend (port 80) and backend (port 3000)
- Set up automatic password generation and environment variables
- Use latest image tag by default
- Add logo and metadata to meta.json

* fix: process meta.json to fix formatting and sorting

* Update GitHub workflows to target 'canary' branch for meta validation

* Update pnpm-lock.yaml to upgrade various dependencies, including '@codemirror/autocomplete', '@radix-ui/react-dialog', and React packages to their latest versions. This includes updates to '@types/react' and '@types/react-dom' for improved compatibility and performance.

* Enhance GitHub workflows: add production deployment configuration and target 'canary' branch for pull requests.

* Refactor GitHub workflow: comment out build preview steps for clarity and future modifications.

* Remove unnecessary blank line in deploy-preview.yml for improved readability.

* Refactor GitHub workflow: uncomment build preview steps for improved deployment process and clarity.

* Update template.toml (#555)

* Update template.toml

* Update template.toml

* Update template.toml

* fix: change VITE_API_BASE to http:// for traefik.me compatibility

* changed image from sknnr/enshrouded-dedicated-server to mornedhels/enshrouded-server for autoupdate and easier config

* Add Openinary Template (#567)

* feat: add Openinary template

* feat: update Openinary configuration to support ALLOWED_ORIGIN and refactor domain variable

* fix: correct DEFAULT_DOMAIN environment variable reference in docker-compose.yml (#562)

* add rustfs template (#568)

* feat: add pull request template for improved contribution guidelines

* fix: update pull request template to clarify issue closing keywords

* feat: add validation scripts and configuration for Docker Compose and template files

- Introduced a GitHub Actions workflow to validate Docker Compose files and template.toml on pull requests.
- Added helper functions for generating random values and processing variables in templates.
- Implemented validation scripts for checking the structure, syntax, and best practices of Docker Compose and template files.
- Created necessary TypeScript types and configuration files for the build scripts.

* Add Passbolt template blueprint to Dokploy templates (#376)

* feat(templates): add Passbolt blueprint for Dokploy
- Add docker-compose.yml defining services for Passbolt and MariaDB
- Create template.toml with configurable domain, email, and database credentials
- Add meta.json with metadata, tags, and link to logo

* fix(meta): sort meta.json entries

* fix: passbolt template had several issues that broke deployment

- env variables were using old array format, changed to new table format
- mariadb healthcheck was broken (wrong command for mariadb 11)
- missing volume mounts for gpg keys, jwt tokens, and database
- setup instructions weren't visible to users, moved to docker-compose
- email config had circular references causing warnings
- tested admin user creation and confirmed working

everything works now, fully tested

* Update blueprints/passbolt/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: Add Kokoro TTS FastAPI template (#353) (#403)

* feat: Add Kokoro TTS FastAPI template (#353)  - Add CPU-optimized docker-compose.yml with source build - Add GPU-optimized docker-compose-gpu.yml for NVIDIA support - Add comprehensive template.toml with OpenAI-compatible API docs - Add kokoro-tts.svg logo and meta.json entry - Support streaming audio, timestamps, and multi-language TTS - Resolves #353

* updated the meta.json for the build errors

* removed the docker-compose-gpu.yml file

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* chore: remove package-lock.json file from the app directory

* chore: update Tolgee to latest version and fix SMTP config typo (#432)

* chore: update Tolgee to latest version and fix SMTP config typo

* Update docker-compose.yml

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix: improve Docker Compose validation workflow to handle subshell issues

- Converted the handling of COMPOSE_FILES from a pipe to an array to ensure error propagation in the parent shell.
- Updated the loop to iterate over the array for better reliability in the validation process.

* refactor: enhance Docker Compose validation workflow to improve error handling

- Replaced the pipe with an array to handle directory names, ensuring that errors within the loop propagate correctly to the parent shell.
- Updated the loop structure for better reliability in processing the directories.

* Feat: Add parseable (#460)

* Add parseable

* Update docker-compose.yml

* Update docker-compose.yml

* Update blueprints/parseable/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* feat: add ChirpStack LoRaWAN Network Server template (#486)

* feat: add ChirpStack LoRaWAN Network Server template

  Add complete ChirpStack v4 template with:
  - Main ChirpStack server with web UI
  - UDP and Basics Station gateway bridges
  - REST API interface
  - PostgreSQL database with PostGIS extensions
  - Redis cache
  - Mosquitto MQTT broker

Default configuration for EU868 region with secure random credentials. Supports all LoRaWAN frequency bands globally.

* fix(chirpstack): use original configurations from chirpstack-docker repo

Update template.toml to use exact configuration files from the
chirpstack-docker repository instead of simplified versions:

- Use original chirpstack.toml with all 15 enabled regions
- Use original gateway bridge configuration with documentation links
- Use complete Basics Station EU868 config with frequency plans
- Keep original Mosquitto and PostgreSQL initialization scripts

Template size increased from 131 to 219 lines (4.7KB) to include
comprehensive default configurations that match the official setup.

* feat: add all 38 region configuration files

* fix(chirpstack): add volume mounts to expose config files to containers

* fix(chirpstack): remove read-only flag

* fix(chirpstack): correct file paths for configuration mounts in docker-compose and template files

* fix: update volume paths to be on correct directory level

* fix: configure template for dokploy-network with proper DNS resolution

- Add dokploy-network configuration to docker-compose.yml
- Replace environment variable placeholders with actual service hostnames
- Change PostgreSQL DSN from $POSTGRESQL_HOST to postgres
- Change Redis server from $REDIS_HOST to redis
- Replace $MQTT_BROKER_HOST with mosquitto in all 39 region configurations

These changes ensure Docker DNS resolution works correctly by:
- Using dokploy-network (overlay) instead of bridge network
- Using service names directly in TOML config files (TOML doesn't expand env vars)
- Enabling proper service discovery between containers

This resolves DNS resolution failures that caused ChirpStack to fail connecting
to PostgreSQL and MQTT services during deployment.

* fix: add missing network configurations for all services in docker-compose

* feat: add internal services to config.domains for proper network configuration

* Update docker-compose.yml

* fix: enhance domain validation in template validator

- Updated the TemplateValidator to ensure that if the 'host' field is provided, it must be a valid string.
- Added comments to clarify that 'host' is optional for internal services.

* refactor: remove redundant host validation in template validator

- Removed the validation for the 'host' field in the TemplateValidator, as it is optional for internal services and does not require a type check if not provided.

* refactor: remove internal service domain configurations from template

- Eliminated the domain configurations for internal services (Postgres, Redis, Mosquitto) from the template.toml file, streamlining the configuration for better clarity and maintainability.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* Update section title from 'Suggestions' to 'Requirements'

* Feat : Add MCSManager template support (#521) (#522)

* feat: Add MCSManager template support (#521)

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: Add MediaCMS template (#524)

* Feat : Add Quant-Ux template -#173 (#525)

* Feat : Add Quant-Ux template -#173

* Remove extra newline in docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix(rustdesk): use explicit ports, use port 21118 on hbbs instead of hbbr (#526)

* fix: use explicit ports, use port 21118 on hbbs instead of hbbr

* fix: whitespace character in rustdesk

* feat: Add anytype template (#527)

* add anytype template

* sort

* Update name field for Anytype in meta.json

* Update meta.json

* Update docker-compose.yml

* Update blueprints/anytype/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* refactor: remove dokploy-network configurations from multiple docker-compose files

- Removed the external dokploy-network configuration from various services' docker-compose.yml files to streamline network management.
- This change simplifies the setup and ensures consistency across blueprints.

* chore: upgrade Infisical from v0.90.1 to v0.135.0 (#529)

* chore: upgrade Infisical from v0.90.1 to v0.135.0

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix: update pull request template link for clarity

- Changed the link in the pull request template from 'general suggestions' to 'general requirements' to better reflect the content and ensure users follow the correct guidelines when creating templates.

* chore: add section for screenshots or videos in pull request template

- Introduced a new section in the pull request template to encourage contributors to include screenshots or videos, enhancing the clarity and context of their submissions.

* Feat : Add MuleSoft ESB Runtime  Template (#498)

* added the mulesoft esb template

* updated the compose and the meta.json

* feat(mulesoft-esb): update image and add dynamic env configuration  - Updated image to hari1367709/mule-esb:latest - Added dynamic HTTP_PORT for runtime port configuration - Added MULE_VERSION environment variable for Mule ESB version selection

* updated the meta.json to use the version as latest

* added a comment line to the template file

* updated the mule runtime image

* fix(mulesoft-esb): update ports configuration to follow guidelines

* updated the port to use the env(HTTP_PORT)

* Update docker-compose.yml

* Update docker-compose.yml

* Update blueprints/mulesoft-esb/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat(blueprint): update trmnl-byos-laravel template (#533)

* feat(blueprint): update trmnl-byos-laravel template

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat(blueprint): peerdb template (#579)

* feat(blueprint): initial attempt at peerdb template

* fix: entrypoint and healthcheck

* fix: entrypoint

* fix: temporarily remove network

* fix: temporal port

* chore: remove 36987 for minio

* fix: remove peerdb 9900 port exposure

* fix: port for console

* fix: minio env fix

* fix: expose peerdb and minio to dokploy network

* fix(peerdb): add defaults

* fix: remove extra hosts

* fix: remove network entries

* fix: use consistent environment variables

* feat: add Bluesky PDS template (#542)

* feat: Bluesky PDS template

* chore: add bluesky pds svg

* chore: metadata for bluesky pds

* yaml > yml

* pnpm lock

* fix: correct rotation key config

* fix volumes

* fix: volumes in the pds compose

* define volumes in compose

* fix: 32 bit rotation key

* create pds.env correctly

* some extra fixes

* more extra fixes

* a blank line

* update pnpm lock

* Add dokploy-prom-monitoring-extension template with comprehensive tests and documentation (#548)

* Add dokploy-prom-monitoring-extension template with comprehensive tests and documentation

* Fix METRICS_CONFIG environment variable: use single-line JSON format

* Fix template.toml: use correct [config.env] syntax for environment variables

* Fix docker-compose.yml: add env_file reference to load environment variables

* Delete blueprints/dokploy-prom-monitoring-extension/README.md

* Delete test-dokploy-prom-monitoring-extension.sh

---------

Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: improve RustDesk template configuration (#571)

* feat: improve RustDesk template configuration

- Add comprehensive environment variables for RustDesk server
- Add RELAY_HOST, API_SERVER, ID_SERVER, and ENCRYPTION_KEY variables
- Follow Dokploy best practices (no container_name, proper port format)
- Use restart: unless-stopped policy
- Add encryption key generation with password helper

* fix: use explicit port mapping for RustDesk services

RustDesk requires explicit port bindings (host:container format) to function properly. The service uses specific ports for:
- 21115-21116 (TCP/UDP): hbbs service for ID and NAT traversal
- 21117-21119 (TCP): hbbr relay service

Without explicit port mapping, RustDesk clients cannot establish connections to the server.

This is an exception to Dokploy's general port guidelines due to RustDesk's specific networking requirements.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: add Mumble voice chat server template (#572)

* feat: add Mumble voice chat server template

- Add Mumble VoIP server blueprint with docker-compose.yml
- Configure environment variables for superuser password, welcome text, and max users
- Add template.toml with auto-generated secure password
- Follow Dokploy best practices (no container_name, proper port format)
- Add Mumble metadata to meta.json with proper tags
- Support for TCP and UDP on port 64738

* Update template.toml

* fix: correct JSON formatting in meta.json for Mumble template entry

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* fix: update WireGuard Easy template for proper functionality (#573)

* fix: update WireGuard Easy template for proper functionality

- Changed to named volume (etc_wireguard) instead of host path mount
- Added explicit port mappings (51820:51820/udp, 51821:51821/tcp) required for WireGuard
- Updated environment variables to use correct WG_HOST and PASSWORD format
- Added all required WireGuard environment variables:
  - WG_PORT, PORT, WG_MTU, WG_DEFAULT_DNS, WG_ALLOWED_IPS
  - WG_POST_UP/WG_POST_DOWN for iptables rules
- Added NET_RAW capability for proper network operations
- Simplified template.toml to use WIREGUARD_HOST and WIREGUARD_PASSWORD
- Removed explicit networks config to enable Dokploy's isolated deployment
- Template now works with Dokploy's automatic network isolation

This configuration has been tested and confirmed working with isolated deployment enabled.

* Update template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* add: restart policy to MinIO service (#576)

restart: unless-stopped is a Docker restart policy that automatically restarts a container if it stops due to an error or Docker daemon restart

* Updating copilot instructions.md and AGENTS.md (#452)

* docs: add copilot instructions for project development

Added comprehensive documentation file (.github/copilot-instructions.md) that provides detailed guidance on the Dokploy Open Source Templates project structure, development workflow, and conventions. The document covers the project overview, key files and directories, development workflow for adding/updating templates, local development setup, CI/CD processes, and established conventions and patterns. This documentation will help onboard new contributors and ensure consistent development practices across the project.

* docs(copilot-instructions): enhance project overview and development guide

Updated copilot instructions to reflect expanded app capabilities (200+ apps, TypeScript integration, Fuse.js search) and detailed processes for templates, local dev, and CI/CD for improved clarity and accuracy.

* refactor: remove frontend development instructions from AGENTS.md and update contributing guidelines

- Removed frontend development commands from AGENTS.md to streamline the document.
- Updated CONTRIBUTING.md by removing the recommendation to set `restart: unless-stopped` for services.

---------

Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* Add trailbase template (#590)

* Add trailbase

* Add comment on mounting local directory

* Update meta.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: openpanel and migrate to v2 (#594)

* refactor: update docker-compose.yml to include version and restart policy (#599)

* feat(blueprint): mage ai template (#601)

* feat(blueprint): template for mage-ai

* fix: add healthcheck for mage-ai

* docs: update copilot instructions to emphasize version pinning in docker-compose.yml

Clarified the importance of pinning image versions in docker-compose.yml and explicitly stated to avoid using the `latest` tag to prevent potential issues with template functionality when upstream images change.

* refactor: enhance Docker Compose validation workflow

Updated the GitHub Actions workflow for validating Docker Compose files by streamlining the detection of changed blueprints and improving the validation process. Removed redundant steps and consolidated the validation of docker-compose.yml and template.toml files into a more efficient structure. Added clearer output messages for validation results and ensured that best practices are checked for each blueprint. This refactor aims to improve maintainability and clarity in the CI/CD process.

* fix: update zitadel default instance features (#544)

* Add Reactive Resume template (#603)

* Initial plan

* Add Reactive Resume template with docker-compose, template.toml, and meta.json entry

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Fix MinIO storage path alignment between template.toml and docker-compose.yml

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Update docker-compose.yml

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* [WIP] Fix mounted prometheus.yml file not working (#605)

* Initial plan

* Fix Prometheus mounted prometheus.yml file by adding volume mount

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Update blueprints/prometheus/template.toml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* docs: update copilot instructions to enforce open source requirement

Added a clear requirement stating that all services must be open source and only applications with open-source licenses (e.g., MIT, Apache, GPL, AGPL) are allowed. This update aims to ensure compliance and maintain the integrity of the project.

* Fix Cap.so template MinIO deployment failure (#604)

* Initial plan

* Fix Cap.so MinIO image to use official quay.io image

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Fix MinIO healthcheck to use curl instead of mc

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Update .gitignore

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Fix Discourse template manifest error - update to bitnamilegacy/discourse:3.5.0 (#606)

* Initial plan

* Fix Discourse template by updating to bitnamilegacy/discourse:3.5.0

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Remove pull request trigger from deploy-preview workflow

* Enhance copilot instructions by adding verification steps for Docker images and clarifying URL variable usage. Emphasize the importance of verifying image existence before committing to prevent deployment failures.

* Add Easy!Appointments template (#608)

* Initial plan

* Add Easyappointments template with docker-compose, template.toml, and meta.json entry

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Update blueprints/easyappointments/template.toml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update template.toml

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Add Dolibarr ERP & CRM template (#610)

* Initial plan

* Add Dolibarr ERP & CRM template

Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>

* Update template.toml

* Update blueprints/dolibarr/docker-compose.yml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: add Syncthing Template (#636)

* Adiciona template do Syncthing com arquivos de configuração e ícone

* Remove versão do Docker Compose do template do Syncthing

* Update Umami to version v2.20.2 (#641)

* Feat : Add InstantDB template (#224) (#530)

* feat: add InstantDB template

* added the server service also

* removed the external network

* Update docker-compose.yml

* Update blueprints/instantdb/docker-compose.yml

* Update blueprints/instantdb/docker-compose.yml

* Update docker-compose.yml

* Update blueprints/instantdb/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* [New Template] Added Lavalink template for dokploy (#535)

* Add initial Lavalink configuration template

* Added lavalink.svg logo

* Create docker-compose.yml for Lavalink setup

Add Docker Compose configuration for Lavalink service.

* Modify healthcheck interval in docker-compose.yml

Increased healthcheck interval from 10s to 100s.

* Add Lavalink metadata to meta.json

Added metadata for Lavalink audio sending node.

* Update server_port variable to use ${port}

* Change server port variable to randomPort

* Change port variable to randomPort in template.toml

* Change port variable in template.toml

* Update server port in template.toml

* Fix formatting in template.toml for server config

* style: Reformat lavalink entry in meta.json.

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* chore(blueprint): update Appwrite services to v1.8 (#383)

* Update Appwrite version docker images and environment variables

* Add separate domains for functions and sites, update environment variables, replace insecure default passwords

* Update Appwrite version from 1.6.1 to 1.7.4 in `meta.json`

* Fix envs and update domains

* Add missing volume mounts for sites

* Fix config file syntax

* Update runtimes network configuration in template.toml

* Update Appwrite to 1.8

* Update appwrite image version to 1.8.0

* Add logging configuration to docker-compose

* New Templates (#586)

* feat(librechat): add LibreChat blueprint with compose, toml, metadata, links and tags

* fix: rename templates to template.toml

* fix(librechat): rename api service to librechat in docker-compose.yml

* Update blueprints/librechat/template.toml

* Update blueprints/librechat/template.toml

* fix(librechat): add version under [config] and remove stray [config.mounts] header

* fix(librechat): remove predefined persistent volume mounts from template.toml

* docs(librechat): add authentication reference link to docker-compose.yml

* feat: add Rote template

- Add Rote deployment template with frontend, backend, and PostgreSQL services
- Configure domain routing for frontend (port 80) and backend (port 3000)
- Set up automatic password generation and environment variables
- Use latest image tag by default
- Add logo and metadata to meta.json

* fix: process meta.json to fix formatting and sorting

* Update GitHub workflows to target 'canary' branch for meta validation

* Update pnpm-lock.yaml to upgrade various dependencies, including '@codemirror/autocomplete', '@radix-ui/react-dialog', and React packages to their latest versions. This includes updates to '@types/react' and '@types/react-dom' for improved compatibility and performance.

* Enhance GitHub workflows: add production deployment configuration and target 'canary' branch for pull requests.

* Refactor GitHub workflow: comment out build preview steps for clarity and future modifications.

* Remove unnecessary blank line in deploy-preview.yml for improved readability.

* Refactor GitHub workflow: uncomment build preview steps for improved deployment process and clarity.

* Update template.toml (#555)

* Update template.toml

* Update template.toml

* Update template.toml

* fix: change VITE_API_BASE to http:// for traefik.me compatibility

* changed image from sknnr/enshrouded-dedicated-server to mornedhels/enshrouded-server for autoupdate and easier config

* Add Openinary Template (#567)

* feat: add Openinary template

* feat: update Openinary configuration to support ALLOWED_ORIGIN and refactor domain variable

* fix: correct DEFAULT_DOMAIN environment variable reference in docker-compose.yml (#562)

* add rustfs template (#568)

* feat: add pull request template for improved contribution guidelines

* fix: update pull request template to clarify issue closing keywords

* feat: add validation scripts and configuration for Docker Compose and template files

- Introduced a GitHub Actions workflow to validate Docker Compose files and template.toml on pull requests.
- Added helper functions for generating random values and processing variables in templates.
- Implemented validation scripts for checking the structure, syntax, and best practices of Docker Compose and template files.
- Created necessary TypeScript types and configuration files for the build scripts.

* Add Passbolt template blueprint to Dokploy templates (#376)

* feat(templates): add Passbolt blueprint for Dokploy
- Add docker-compose.yml defining services for Passbolt and MariaDB
- Create template.toml with configurable domain, email, and database credentials
- Add meta.json with metadata, tags, and link to logo

* fix(meta): sort meta.json entries

* fix: passbolt template had several issues that broke deployment

- env variables were using old array format, changed to new table format
- mariadb healthcheck was broken (wrong command for mariadb 11)
- missing volume mounts for gpg keys, jwt tokens, and database
- setup instructions weren't visible to users, moved to docker-compose
- email config had circular references causing warnings
- tested admin user creation and confirmed working

everything works now, fully tested

* Update blueprints/passbolt/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: Add Kokoro TTS FastAPI template (#353) (#403)

* feat: Add Kokoro TTS FastAPI template (#353)  - Add CPU-optimized docker-compose.yml with source build - Add GPU-optimized docker-compose-gpu.yml for NVIDIA support - Add comprehensive template.toml with OpenAI-compatible API docs - Add kokoro-tts.svg logo and meta.json entry - Support streaming audio, timestamps, and multi-language TTS - Resolves #353

* updated the meta.json for the build errors

* removed the docker-compose-gpu.yml file

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* chore: remove package-lock.json file from the app directory

* chore: update Tolgee to latest version and fix SMTP config typo (#432)

* chore: update Tolgee to latest version and fix SMTP config typo

* Update docker-compose.yml

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix: improve Docker Compose validation workflow to handle subshell issues

- Converted the handling of COMPOSE_FILES from a pipe to an array to ensure error propagation in the parent shell.
- Updated the loop to iterate over the array for better reliability in the validation process.

* refactor: enhance Docker Compose validation workflow to improve error handling

- Replaced the pipe with an array to handle directory names, ensuring that errors within the loop propagate correctly to the parent shell.
- Updated the loop structure for better reliability in processing the directories.

* Feat: Add parseable (#460)

* Add parseable

* Update docker-compose.yml

* Update docker-compose.yml

* Update blueprints/parseable/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* feat: add ChirpStack LoRaWAN Network Server template (#486)

* feat: add ChirpStack LoRaWAN Network Server template

  Add complete ChirpStack v4 template with:
  - Main ChirpStack server with web UI
  - UDP and Basics Station gateway bridges
  - REST API interface
  - PostgreSQL database with PostGIS extensions
  - Redis cache
  - Mosquitto MQTT broker

Default configuration for EU868 region with secure random credentials. Supports all LoRaWAN frequency bands globally.

* fix(chirpstack): use original configurations from chirpstack-docker repo

Update template.toml to use exact configuration files from the
chirpstack-docker repository instead of simplified versions:

- Use original chirpstack.toml with all 15 enabled regions
- Use original gateway bridge configuration with documentation links
- Use complete Basics Station EU868 config with frequency plans
- Keep original Mosquitto and PostgreSQL initialization scripts

Template size increased from 131 to 219 lines (4.7KB) to include
comprehensive default configurations that match the official setup.

* feat: add all 38 region configuration files

* fix(chirpstack): add volume mounts to expose config files to containers

* fix(chirpstack): remove read-only flag

* fix(chirpstack): correct file paths for configuration mounts in docker-compose and template files

* fix: update volume paths to be on correct directory level

* fix: configure template for dokploy-network with proper DNS resolution

- Add dokploy-network configuration to docker-compose.yml
- Replace environment variable placeholders with actual service hostnames
- Change PostgreSQL DSN from $POSTGRESQL_HOST to postgres
- Change Redis server from $REDIS_HOST to redis
- Replace $MQTT_BROKER_HOST with mosquitto in all 39 region configurations

These changes ensure Docker DNS resolution works correctly by:
- Using dokploy-network (overlay) instead of bridge network
- Using service names directly in TOML config files (TOML doesn't expand env vars)
- Enabling proper service discovery between containers

This resolves DNS resolution failures that caused ChirpStack to fail connecting
to PostgreSQL and MQTT services during deployment.

* fix: add missing network configurations for all services in docker-compose

* feat: add internal services to config.domains for proper network configuration

* Update docker-compose.yml

* fix: enhance domain validation in template validator

- Updated the TemplateValidator to ensure that if the 'host' field is provided, it must be a valid string.
- Added comments to clarify that 'host' is optional for internal services.

* refactor: remove redundant host validation in template validator

- Removed the validation for the 'host' field in the TemplateValidator, as it is optional for internal services and does not require a type check if not provided.

* refactor: remove internal service domain configurations from template

- Eliminated the domain configurations for internal services (Postgres, Redis, Mosquitto) from the template.toml file, streamlining the configuration for better clarity and maintainability.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* Update section title from 'Suggestions' to 'Requirements'

* Feat : Add MCSManager template support (#521) (#522)

* feat: Add MCSManager template support (#521)

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: Add MediaCMS template (#524)

* Feat : Add Quant-Ux template -#173 (#525)

* Feat : Add Quant-Ux template -#173

* Remove extra newline in docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix(rustdesk): use explicit ports, use port 21118 on hbbs instead of hbbr (#526)

* fix: use explicit ports, use port 21118 on hbbs instead of hbbr

* fix: whitespace character in rustdesk

* feat: Add anytype template (#527)

* add anytype template

* sort

* Update name field for Anytype in meta.json

* Update meta.json

* Update docker-compose.yml

* Update blueprints/anytype/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* refactor: remove dokploy-network configurations from multiple docker-compose files

- Removed the external dokploy-network configuration from various services' docker-compose.yml files to streamline network management.
- This change simplifies the setup and ensures consistency across blueprints.

* chore: upgrade Infisical from v0.90.1 to v0.135.0 (#529)

* chore: upgrade Infisical from v0.90.1 to v0.135.0

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix: update pull request template link for clarity

- Changed the link in the pull request template from 'general suggestions' to 'general requirements' to better reflect the content and ensure users follow the correct guidelines when creating templates.

* chore: add section for screenshots or videos in pull request template

- Introduced a new section in the pull request template to encourage contributors to include screenshots or videos, enhancing the clarity and context of their submissions.

* Feat : Add MuleSoft ESB Runtime  Template (#498)

* added the mulesoft esb template

* updated the compose and the meta.json

* feat(mulesoft-esb): update image and add dynamic env configuration  - Updated image to hari1367709/mule-esb:latest - Added dynamic HTTP_PORT for runtime port configuration - Added MULE_VERSION environment variable for Mule ESB version selection

* updated the meta.json to use the version as latest

* added a comment line to the template file

* updated the mule runtime image

* fix(mulesoft-esb): update ports configuration to follow guidelines

* updated the port to use the env(HTTP_PORT)

* Update docker-compose.yml

* Update docker-compose.yml

* Update blueprints/mulesoft-esb/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat(blueprint): update trmnl-byos-laravel template (#533)

* feat(blueprint): update trmnl-byos-laravel template

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat(blueprint): peerdb template (#579)

* feat(blueprint): initial attempt at peerdb template

* fix: entrypoint and healthcheck

* fix: entrypoint

* fix: temporarily remove network

* fix: temporal port

* chore: remove 36987 for minio

* fix: remove peerdb 9900 port exposure

* fix: port for console

* fix: minio env fix

* fix: expose peerdb and minio to dokploy network

* fix(peerdb): add defaults

* fix: remove extra hosts

* fix: remove network entries

* fix: use consistent environment variables

* feat: add Bluesky PDS template (#542)

* feat: Bluesky PDS template

* chore: add bluesky pds svg

* chore: metadata for bluesky pds

* yaml > yml

* pnpm lock

* fix: correct rotation key config

* fix volumes

* fix: volumes in the pds compose

* define volumes in compose

* fix: 32 bit rotation key

* create pds.env correctly

* some extra fixes

* more extra fixes

* a blank line

* update pnpm lock

* Add dokploy-prom-monitoring-extension template with comprehensive tests and documentation (#548)

* Add dokploy-prom-monitoring-extension template with comprehensive tests and documentation

* Fix METRICS_CONFIG environment variable: use single-line JSON format

* Fix template.toml: use correct [config.env] syntax for environment variables

* Fix docker-compose.yml: add env_file reference to load environment variables

* Delete blueprints/dokploy-prom-monitoring-extension/README.md

* Delete test-dokploy-prom-monitoring-extension.sh

---------

Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: improve RustDesk template configuration (#571)

* feat: improve RustDesk template configuration

- Add comprehensive environment variables for RustDesk server
- Add RELAY_HOST, API_SERVER, ID_SERVER, and ENCRYPTION_KEY variables
- Follow Dokploy best practices (no container_name, proper port format)
- Use restart: unless-stopped policy
- Add encryption key generation with password helper

* fix: use explicit port mapping for RustDesk services

RustDesk requires explicit port bindings (host:container format) to function properly. The service uses specific ports for:
- 21115-21116 (TCP/UDP): hbbs service for ID and NAT traversal
- 21117-21119 (TCP): hbbr relay service

Without explicit port mapping, RustDesk clients cannot establish connections to the server.

This is an exception to Dokploy's general port guidelines due to RustDesk's specific networking requirements.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: add Mumble voice chat server template (#572)

* feat: add Mumble voice chat server template

- Add Mumble VoIP server blueprint with docker-compose.yml
- Configure environment variables for superuser password, welcome text, and max users
- Add template.toml with auto-generated secure password
- Follow Dokploy best practices (no container_name, proper port format)
- Add Mumble metadata to meta.json with proper tags
- Support for TCP and UDP on port 64738

* Update template.toml

* fix: correct JSON formatting in meta.json for Mumble template entry

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* fix: update WireGuard Easy template for proper functionality (#573)

* fix: update WireGuard Easy template for proper functionality

- Changed to named volume (etc_wireguard) instead of host path mount
- Added explicit port mappings (51820:51820/udp, 51821:51821/tcp) required for WireGuard
- Updated environment variables to use correct WG_HOST and PASSWORD format
- Added all required WireGuard environment variables:
  - WG_PORT, PORT, WG_MTU, WG_DEFAULT_DNS, WG_ALLOWED_IPS
  - WG_POST_UP/WG_POST_DOWN for iptables rules
- Added NET_RAW capability for proper network operations
- Simplified template.toml to use WIREGUARD_HOST and WIREGUARD_PASSWORD
- Removed explicit networks config to enable Dokploy's isolated deployment
- Template now works with Dokploy's automatic network isolation

This configuration has been tested and confirmed working with isolated deployment enabled.

* Update template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* add: restart policy to MinIO service (#576)

restart: unless-stopped is a Docker restart policy that automatically restarts a container if it stops due to an error or Docker daemon restart

---------

Co-authored-by: Sunil Shrestha <sunil.shrestha@tekkon.com.np>
Co-authored-by: Rabithua <rabithua@gmail.com>
Co-authored-by: Mauricio Siu <siumauricio@hotmail.com>
Co-authored-by: Scan <103391616+scanash00@users.noreply.github.com>
Co-authored-by: Crackvignoule <kiki.kalagan@gmail.com>
Co-authored-by: florianheysen <39408021+florianheysen@users.noreply.github.com>
Co-authored-by: Thiago MadPin <madpin@gmail.com>
Co-authored-by: BlinkStrike <18644035+BlinkStrike@users.noreply.github.com>
Co-authored-by: M Jupri Amin <127651222+Juupeee@users.noreply.github.com>
Co-authored-by: Harikrishnan Dhanasekaran <harikrishnan@mulecraft.in>
Co-authored-by: Kamil Dzieniszewski <kamil.dzieniszewski@gmail.com>
Co-authored-by: Nick Anderson <nbrookie@gmail.com>
Co-authored-by: lefolalan <alan.lefol@omirion.com>
Co-authored-by: Chris <31969757+ChrisvanChip@users.noreply.github.com>
Co-authored-by: kipavy <88386090+kipavy@users.noreply.github.com>
Co-authored-by: Benjamin Nussbaum <bnussbau@users.noreply.github.com>
Co-authored-by: Khiet Tam Nguyen <86177399+nktnet1@users.noreply.github.com>
Co-authored-by: Vidhya LKG for IT <24915474+VidhyaSanjeevi@users.noreply.github.com>
Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Muzaffer Kadir YILMAZ <34358176+muzafferkadir@users.noreply.github.com>
Co-authored-by: Jemg <murksopps@gmail.com>

* Remove `container_name` from all containers

* Remove expliced networks

* Update blueprints/appwrite/docker-compose.yml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update password variables to use 32-character length

* Update Appwrite description and tags in meta.json

* Fix JSON formatting in meta.json by adding missing closing bracket

* Fix formatting in meta.json by removing trailing spaces in tags array

* Add missing SMS and Backblaze storage configuration options in template.toml

* Update docker-compose.yml

---------

Co-authored-by: Pascal Oberbeck <pascal.oberbeck@paperlesswork.de>
Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Sunil Shrestha <sunil.shrestha@tekkon.com.np>
Co-authored-by: Rabithua <rabithua@gmail.com>
Co-authored-by: Mauricio Siu <siumauricio@hotmail.com>
Co-authored-by: Scan <103391616+scanash00@users.noreply.github.com>
Co-authored-by: Crackvignoule <kiki.kalagan@gmail.com>
Co-authored-by: florianheysen <39408021+florianheysen@users.noreply.github.com>
Co-authored-by: Thiago MadPin <madpin@gmail.com>
Co-authored-by: BlinkStrike <18644035+BlinkStrike@users.noreply.github.com>
Co-authored-by: M Jupri Amin <127651222+Juupeee@users.noreply.github.com>
Co-authored-by: Harikrishnan Dhanasekaran <harikrishnan@mulecraft.in>
Co-authored-by: Kamil Dzieniszewski <kamil.dzieniszewski@gmail.com>
Co-authored-by: Nick Anderson <nbrookie@gmail.com>
Co-authored-by: lefolalan <alan.lefol@omirion.com>
Co-authored-by: Chris <31969757+ChrisvanChip@users.noreply.github.com>
Co-authored-by: kipavy <88386090+kipavy@users.noreply.github.com>
Co-authored-by: Benjamin Nussbaum <bnussbau@users.noreply.github.com>
Co-authored-by: Khiet Tam Nguyen <86177399+nktnet1@users.noreply.github.com>
Co-authored-by: Vidhya LKG for IT <24915474+VidhyaSanjeevi@users.noreply.github.com>
Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Muzaffer Kadir YILMAZ <34358176+muzafferkadir@users.noreply.github.com>
Co-authored-by: Jemg <murksopps@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* feat: emqx template (MQTT Broker) (#556)

* feat: template for emqx

* chore: process meta

* fix: use websocket on port 443 instead of 8084

* docs: improve comments for emqx template

* fix: use emqx service name

* fix: use dummy domain instead of traefik

* fix: explicitly list dokplok-network

* fix(emqx): restart unless stopped

* fix(emqx): add healthcheck

* Dokploy Deployment for Mautic 5 (#564)

* first draft

* second

* try 3

* 4

* Update docker-compose.yml

* Update template.toml

* Enhance healthchecks and service dependencies in Docker Compose

Updated healthcheck configurations for Mautic and MySQL services to improve service reliability. Added conditions to ensure services wait for dependencies to be healthy before starting.

* Update Mautic docker-compose with health checks and roles

* fix: searxng template (#651)

* fix: use major version for openpanel (#680)

* Feat/minepanel template (#657)

* feat: add Minepanel template

* fix: pin images to v1.7.1 and use http for URLs

* fix: remove explicit ports, Dokploy handles proxying

* chore: process and sort meta.json

* fix: consolidate domain variables to main_domain

* fix: add version field to docker-compose.yml

* Add Komari Monitor template with Docker Compose, icon, and metadata (#XXX) (#623)

* Introduce Komari Monitor, a self-hosted server monitoring tool, with its corresponding Docker Compose configuration, icon, and metadata entry.

* Add template.toml for configuration and environment variables.

* Include necessary links for GitHub and documentation.

* Add Misaka Danmu Server template with Docker Compose, icon, and metadata (#624)

* Introduce Misaka Danmu Server, a self-hosted danmaku server for live streaming, with its corresponding Docker Compose configuration, icon, and metadata entry.

* Add template.toml for configuration and environment variables.

* Include necessary links for GitHub and documentation.

* fix: pyrodactyl no longer uses main tag for it's latest release (#626)

* fix: pyrodactyl no longer uses main tag for it's latest release

* Remove custom network settings from docker-compose

Removed custom network configuration from docker-compose.

* Update MariaDB and Pyrodactyl images in Docker Compose

* Add Jenkins blueprint template configuration (#634)

- Created a new TOML configuration file for Jenkins blueprint.
- Defined main domain variable and service configuration for Jenkins.
- Set serviceName to "jenkins" with port 8080 and host as the main domain.

* Update Autobase to version 2.5 (#647)

* Update Autobase to version 2.5

Bump the autobase-console Docker image from version 2.2.0 to 2.5.2 in docker-compose.yml to use the latest features and fixes.

* Update docker-compose.yml

* Update docker-compose.yml

* Update meta.json

* Update Autobase description in meta.json

Revised the Autobase package description to clarify it as a self-hosted DBaaS alternative to cloud-managed databases.

* Add Cloudreve template (#649)

Self-hosted file management and sharing system with multi-cloud storage support.
Includes PostgreSQL and Redis for database and caching.

* Update to Umami 3.0.3 (#668)

* Update Umami version from v2.20.2 to v3.0.3

* Update Umami Docker image to version 3.0.3

* fix: tailscale exitnode authkey env (#669)

* Add qbitwebui (#675)

* Add qBittorrent Web UI template

* Fix healthcheck bug

---------

Co-authored-by: Sunil Shrestha <sunil.shrestha@tekkon.com.np>
Co-authored-by: Rabithua <rabithua@gmail.com>
Co-authored-by: Mauricio Siu <siumauricio@hotmail.com>
Co-authored-by: Scan <103391616+scanash00@users.noreply.github.com>
Co-authored-by: Crackvignoule <kiki.kalagan@gmail.com>
Co-authored-by: florianheysen <39408021+florianheysen@users.noreply.github.com>
Co-authored-by: Thiago MadPin <madpin@gmail.com>
Co-authored-by: BlinkStrike <18644035+BlinkStrike@users.noreply.github.com>
Co-authored-by: M Jupri Amin <127651222+Juupeee@users.noreply.github.com>
Co-authored-by: Harikrishnan Dhanasekaran <harikrishnan@mulecraft.in>
Co-authored-by: Kamil Dzieniszewski <kamil.dzieniszewski@gmail.com>
Co-authored-by: Nick Anderson <nbrookie@gmail.com>
Co-authored-by: lefolalan <alan.lefol@omirion.com>
Co-authored-by: Chris <31969757+ChrisvanChip@users.noreply.github.com>
Co-authored-by: kipavy <88386090+kipavy@users.noreply.github.com>
Co-authored-by: Benjamin Nussbaum <bnussbau@users.noreply.github.com>
Co-authored-by: Khiet Tam Nguyen <86177399+nktnet1@users.noreply.github.com>
Co-authored-by: Vidhya LKG for IT <24915474+VidhyaSanjeevi@users.noreply.github.com>
Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Muzaffer Kadir YILMAZ <34358176+muzafferkadir@users.noreply.github.com>
Co-authored-by: Jemg <murksopps@gmail.com>
Co-authored-by: Jainil Prajapati <86187588+jaainil@users.noreply.github.com>
Co-authored-by: Ye Liu <yeliu84@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Carl-Gerhard Lindesvärd <1987198+lindesvard@users.noreply.github.com>
Co-authored-by: Huy Pham <quochuy.dev@gmail.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Louan Fontenele <louanbastos61@gmail.com>
Co-authored-by: Alexey Fedorov <fedorov2505@yandex.com>
Co-authored-by: 0zul <26915998+0zul@users.noreply.github.com>
Co-authored-by: Pascal Oberbeck <35005267+poberbeck@users.noreply.github.com>
Co-authored-by: Pascal Oberbeck <pascal.oberbeck@paperlesswork.de>
Co-authored-by: Christus Vincent <chrisspeakseh@gmail.com>
Co-authored-by: Huba Tuba <57007485+floxay@users.noreply.github.com>
Co-authored-by: Pablo Moraga Sandoval <72164630+Ketbome@users.noreply.github.com>
Co-authored-by: Firefly <77047823+Yuri-NagaSaki@users.noreply.github.com>
Co-authored-by: Naterfute <106989409+naterfute@users.noreply.github.com>
Co-authored-by: Vitaliy Kukharik <37010174+vitabaks@users.noreply.github.com>
Co-authored-by: aurorarissime <github.delta813@passfwd.com>
Co-authored-by: фырат ёздэн <31664778+fir4tozden@users.noreply.github.com>
2026-01-28 01:11:36 -06:00
Tony Hart
1c3afa98db feat: ad streamflow (#645)
Co-authored-by: thaarrtt <tonyhart2020@gmail.com>
2026-01-28 00:34:15 -06:00
kipavy
ea1174c290 feat: Add scrutiny template (#500)
* Adds scrutiny template

* ran npm run process-meta

* feat(scrutiny): add Proxmox usage instructions

* Refactor port mappings in docker-compose.yml

Updated port mappings to remove quotes in docker-compose.yml.
2026-01-07 12:15:11 -06:00
Mauricio Siu
53c2ddb2fa New Templates (#586)
* feat(librechat): add LibreChat blueprint with compose, toml, metadata, links and tags

* fix: rename templates to template.toml

* fix(librechat): rename api service to librechat in docker-compose.yml

* Update blueprints/librechat/template.toml

* Update blueprints/librechat/template.toml

* fix(librechat): add version under [config] and remove stray [config.mounts] header

* fix(librechat): remove predefined persistent volume mounts from template.toml

* docs(librechat): add authentication reference link to docker-compose.yml

* feat: add Rote template

- Add Rote deployment template with frontend, backend, and PostgreSQL services
- Configure domain routing for frontend (port 80) and backend (port 3000)
- Set up automatic password generation and environment variables
- Use latest image tag by default
- Add logo and metadata to meta.json

* fix: process meta.json to fix formatting and sorting

* Update GitHub workflows to target 'canary' branch for meta validation

* Update pnpm-lock.yaml to upgrade various dependencies, including '@codemirror/autocomplete', '@radix-ui/react-dialog', and React packages to their latest versions. This includes updates to '@types/react' and '@types/react-dom' for improved compatibility and performance.

* Enhance GitHub workflows: add production deployment configuration and target 'canary' branch for pull requests.

* Refactor GitHub workflow: comment out build preview steps for clarity and future modifications.

* Remove unnecessary blank line in deploy-preview.yml for improved readability.

* Refactor GitHub workflow: uncomment build preview steps for improved deployment process and clarity.

* Update template.toml (#555)

* Update template.toml

* Update template.toml

* Update template.toml

* fix: change VITE_API_BASE to http:// for traefik.me compatibility

* changed image from sknnr/enshrouded-dedicated-server to mornedhels/enshrouded-server for autoupdate and easier config

* Add Openinary Template (#567)

* feat: add Openinary template

* feat: update Openinary configuration to support ALLOWED_ORIGIN and refactor domain variable

* fix: correct DEFAULT_DOMAIN environment variable reference in docker-compose.yml (#562)

* add rustfs template (#568)

* feat: add pull request template for improved contribution guidelines

* fix: update pull request template to clarify issue closing keywords

* feat: add validation scripts and configuration for Docker Compose and template files

- Introduced a GitHub Actions workflow to validate Docker Compose files and template.toml on pull requests.
- Added helper functions for generating random values and processing variables in templates.
- Implemented validation scripts for checking the structure, syntax, and best practices of Docker Compose and template files.
- Created necessary TypeScript types and configuration files for the build scripts.

* Add Passbolt template blueprint to Dokploy templates (#376)

* feat(templates): add Passbolt blueprint for Dokploy
- Add docker-compose.yml defining services for Passbolt and MariaDB
- Create template.toml with configurable domain, email, and database credentials
- Add meta.json with metadata, tags, and link to logo

* fix(meta): sort meta.json entries

* fix: passbolt template had several issues that broke deployment

- env variables were using old array format, changed to new table format
- mariadb healthcheck was broken (wrong command for mariadb 11)
- missing volume mounts for gpg keys, jwt tokens, and database
- setup instructions weren't visible to users, moved to docker-compose
- email config had circular references causing warnings
- tested admin user creation and confirmed working

everything works now, fully tested

* Update blueprints/passbolt/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: Add Kokoro TTS FastAPI template (#353) (#403)

* feat: Add Kokoro TTS FastAPI template (#353)  - Add CPU-optimized docker-compose.yml with source build - Add GPU-optimized docker-compose-gpu.yml for NVIDIA support - Add comprehensive template.toml with OpenAI-compatible API docs - Add kokoro-tts.svg logo and meta.json entry - Support streaming audio, timestamps, and multi-language TTS - Resolves #353

* updated the meta.json for the build errors

* removed the docker-compose-gpu.yml file

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* chore: remove package-lock.json file from the app directory

* chore: update Tolgee to latest version and fix SMTP config typo (#432)

* chore: update Tolgee to latest version and fix SMTP config typo

* Update docker-compose.yml

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix: improve Docker Compose validation workflow to handle subshell issues

- Converted the handling of COMPOSE_FILES from a pipe to an array to ensure error propagation in the parent shell.
- Updated the loop to iterate over the array for better reliability in the validation process.

* refactor: enhance Docker Compose validation workflow to improve error handling

- Replaced the pipe with an array to handle directory names, ensuring that errors within the loop propagate correctly to the parent shell.
- Updated the loop structure for better reliability in processing the directories.

* Feat: Add parseable (#460)

* Add parseable

* Update docker-compose.yml

* Update docker-compose.yml

* Update blueprints/parseable/template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* feat: add ChirpStack LoRaWAN Network Server template (#486)

* feat: add ChirpStack LoRaWAN Network Server template

  Add complete ChirpStack v4 template with:
  - Main ChirpStack server with web UI
  - UDP and Basics Station gateway bridges
  - REST API interface
  - PostgreSQL database with PostGIS extensions
  - Redis cache
  - Mosquitto MQTT broker

Default configuration for EU868 region with secure random credentials. Supports all LoRaWAN frequency bands globally.

* fix(chirpstack): use original configurations from chirpstack-docker repo

Update template.toml to use exact configuration files from the
chirpstack-docker repository instead of simplified versions:

- Use original chirpstack.toml with all 15 enabled regions
- Use original gateway bridge configuration with documentation links
- Use complete Basics Station EU868 config with frequency plans
- Keep original Mosquitto and PostgreSQL initialization scripts

Template size increased from 131 to 219 lines (4.7KB) to include
comprehensive default configurations that match the official setup.

* feat: add all 38 region configuration files

* fix(chirpstack): add volume mounts to expose config files to containers

* fix(chirpstack): remove read-only flag

* fix(chirpstack): correct file paths for configuration mounts in docker-compose and template files

* fix: update volume paths to be on correct directory level

* fix: configure template for dokploy-network with proper DNS resolution

- Add dokploy-network configuration to docker-compose.yml
- Replace environment variable placeholders with actual service hostnames
- Change PostgreSQL DSN from $POSTGRESQL_HOST to postgres
- Change Redis server from $REDIS_HOST to redis
- Replace $MQTT_BROKER_HOST with mosquitto in all 39 region configurations

These changes ensure Docker DNS resolution works correctly by:
- Using dokploy-network (overlay) instead of bridge network
- Using service names directly in TOML config files (TOML doesn't expand env vars)
- Enabling proper service discovery between containers

This resolves DNS resolution failures that caused ChirpStack to fail connecting
to PostgreSQL and MQTT services during deployment.

* fix: add missing network configurations for all services in docker-compose

* feat: add internal services to config.domains for proper network configuration

* Update docker-compose.yml

* fix: enhance domain validation in template validator

- Updated the TemplateValidator to ensure that if the 'host' field is provided, it must be a valid string.
- Added comments to clarify that 'host' is optional for internal services.

* refactor: remove redundant host validation in template validator

- Removed the validation for the 'host' field in the TemplateValidator, as it is optional for internal services and does not require a type check if not provided.

* refactor: remove internal service domain configurations from template

- Eliminated the domain configurations for internal services (Postgres, Redis, Mosquitto) from the template.toml file, streamlining the configuration for better clarity and maintainability.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* Update section title from 'Suggestions' to 'Requirements'

* Feat : Add MCSManager template support (#521) (#522)

* feat: Add MCSManager template support (#521)

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: Add MediaCMS template (#524)

* Feat : Add Quant-Ux template -#173 (#525)

* Feat : Add Quant-Ux template -#173

* Remove extra newline in docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

* Update blueprints/quant-ux/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix(rustdesk): use explicit ports, use port 21118 on hbbs instead of hbbr (#526)

* fix: use explicit ports, use port 21118 on hbbs instead of hbbr

* fix: whitespace character in rustdesk

* feat: Add anytype template (#527)

* add anytype template

* sort

* Update name field for Anytype in meta.json

* Update meta.json

* Update docker-compose.yml

* Update blueprints/anytype/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* refactor: remove dokploy-network configurations from multiple docker-compose files

- Removed the external dokploy-network configuration from various services' docker-compose.yml files to streamline network management.
- This change simplifies the setup and ensures consistency across blueprints.

* chore: upgrade Infisical from v0.90.1 to v0.135.0 (#529)

* chore: upgrade Infisical from v0.90.1 to v0.135.0

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* fix: update pull request template link for clarity

- Changed the link in the pull request template from 'general suggestions' to 'general requirements' to better reflect the content and ensure users follow the correct guidelines when creating templates.

* chore: add section for screenshots or videos in pull request template

- Introduced a new section in the pull request template to encourage contributors to include screenshots or videos, enhancing the clarity and context of their submissions.

* Feat : Add MuleSoft ESB Runtime  Template (#498)

* added the mulesoft esb template

* updated the compose and the meta.json

* feat(mulesoft-esb): update image and add dynamic env configuration  - Updated image to hari1367709/mule-esb:latest - Added dynamic HTTP_PORT for runtime port configuration - Added MULE_VERSION environment variable for Mule ESB version selection

* updated the meta.json to use the version as latest

* added a comment line to the template file

* updated the mule runtime image

* fix(mulesoft-esb): update ports configuration to follow guidelines

* updated the port to use the env(HTTP_PORT)

* Update docker-compose.yml

* Update docker-compose.yml

* Update blueprints/mulesoft-esb/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat(blueprint): update trmnl-byos-laravel template (#533)

* feat(blueprint): update trmnl-byos-laravel template

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat(blueprint): peerdb template (#579)

* feat(blueprint): initial attempt at peerdb template

* fix: entrypoint and healthcheck

* fix: entrypoint

* fix: temporarily remove network

* fix: temporal port

* chore: remove 36987 for minio

* fix: remove peerdb 9900 port exposure

* fix: port for console

* fix: minio env fix

* fix: expose peerdb and minio to dokploy network

* fix(peerdb): add defaults

* fix: remove extra hosts

* fix: remove network entries

* fix: use consistent environment variables

* feat: add Bluesky PDS template (#542)

* feat: Bluesky PDS template

* chore: add bluesky pds svg

* chore: metadata for bluesky pds

* yaml > yml

* pnpm lock

* fix: correct rotation key config

* fix volumes

* fix: volumes in the pds compose

* define volumes in compose

* fix: 32 bit rotation key

* create pds.env correctly

* some extra fixes

* more extra fixes

* a blank line

* update pnpm lock

* Add dokploy-prom-monitoring-extension template with comprehensive tests and documentation (#548)

* Add dokploy-prom-monitoring-extension template with comprehensive tests and documentation

* Fix METRICS_CONFIG environment variable: use single-line JSON format

* Fix template.toml: use correct [config.env] syntax for environment variables

* Fix docker-compose.yml: add env_file reference to load environment variables

* Delete blueprints/dokploy-prom-monitoring-extension/README.md

* Delete test-dokploy-prom-monitoring-extension.sh

---------

Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: improve RustDesk template configuration (#571)

* feat: improve RustDesk template configuration

- Add comprehensive environment variables for RustDesk server
- Add RELAY_HOST, API_SERVER, ID_SERVER, and ENCRYPTION_KEY variables
- Follow Dokploy best practices (no container_name, proper port format)
- Use restart: unless-stopped policy
- Add encryption key generation with password helper

* fix: use explicit port mapping for RustDesk services

RustDesk requires explicit port bindings (host:container format) to function properly. The service uses specific ports for:
- 21115-21116 (TCP/UDP): hbbs service for ID and NAT traversal
- 21117-21119 (TCP): hbbr relay service

Without explicit port mapping, RustDesk clients cannot establish connections to the server.

This is an exception to Dokploy's general port guidelines due to RustDesk's specific networking requirements.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* feat: add Mumble voice chat server template (#572)

* feat: add Mumble voice chat server template

- Add Mumble VoIP server blueprint with docker-compose.yml
- Configure environment variables for superuser password, welcome text, and max users
- Add template.toml with auto-generated secure password
- Follow Dokploy best practices (no container_name, proper port format)
- Add Mumble metadata to meta.json with proper tags
- Support for TCP and UDP on port 64738

* Update template.toml

* fix: correct JSON formatting in meta.json for Mumble template entry

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
Co-authored-by: Mauricio Siu <siumauricio@icloud.com>

* fix: update WireGuard Easy template for proper functionality (#573)

* fix: update WireGuard Easy template for proper functionality

- Changed to named volume (etc_wireguard) instead of host path mount
- Added explicit port mappings (51820:51820/udp, 51821:51821/tcp) required for WireGuard
- Updated environment variables to use correct WG_HOST and PASSWORD format
- Added all required WireGuard environment variables:
  - WG_PORT, PORT, WG_MTU, WG_DEFAULT_DNS, WG_ALLOWED_IPS
  - WG_POST_UP/WG_POST_DOWN for iptables rules
- Added NET_RAW capability for proper network operations
- Simplified template.toml to use WIREGUARD_HOST and WIREGUARD_PASSWORD
- Removed explicit networks config to enable Dokploy's isolated deployment
- Template now works with Dokploy's automatic network isolation

This configuration has been tested and confirmed working with isolated deployment enabled.

* Update template.toml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>

* add: restart policy to MinIO service (#576)

restart: unless-stopped is a Docker restart policy that automatically restarts a container if it stops due to an error or Docker daemon restart

---------

Co-authored-by: Sunil Shrestha <sunil.shrestha@tekkon.com.np>
Co-authored-by: Rabithua <rabithua@gmail.com>
Co-authored-by: Mauricio Siu <siumauricio@hotmail.com>
Co-authored-by: Scan <103391616+scanash00@users.noreply.github.com>
Co-authored-by: Crackvignoule <kiki.kalagan@gmail.com>
Co-authored-by: florianheysen <39408021+florianheysen@users.noreply.github.com>
Co-authored-by: Thiago MadPin <madpin@gmail.com>
Co-authored-by: BlinkStrike <18644035+BlinkStrike@users.noreply.github.com>
Co-authored-by: M Jupri Amin <127651222+Juupeee@users.noreply.github.com>
Co-authored-by: Harikrishnan Dhanasekaran <harikrishnan@mulecraft.in>
Co-authored-by: Kamil Dzieniszewski <kamil.dzieniszewski@gmail.com>
Co-authored-by: Nick Anderson <nbrookie@gmail.com>
Co-authored-by: lefolalan <alan.lefol@omirion.com>
Co-authored-by: Chris <31969757+ChrisvanChip@users.noreply.github.com>
Co-authored-by: kipavy <88386090+kipavy@users.noreply.github.com>
Co-authored-by: Benjamin Nussbaum <bnussbau@users.noreply.github.com>
Co-authored-by: Khiet Tam Nguyen <86177399+nktnet1@users.noreply.github.com>
Co-authored-by: Vidhya LKG for IT <24915474+VidhyaSanjeevi@users.noreply.github.com>
Co-authored-by: Sanjeevi Subramani <ssanjeevi.ss@gmail.com>
Co-authored-by: Muzaffer Kadir YILMAZ <34358176+muzafferkadir@users.noreply.github.com>
Co-authored-by: Jemg <murksopps@gmail.com>
2025-12-14 23:40:25 -06:00
Harikrishnan Dhanasekaran
3fcc9f2b93 Feat : Add Fonoster template -#45 (#509)
* feat: Add Fonoster template - open source Twilio alternative

* fixed the build issue

* fixed the service log issue
2025-11-28 01:09:47 -06:00
Alex
1c16dee5a0 Fix typo in the url (#518) 2025-11-17 01:14:35 -06:00
David Bottiau
7debd2d193 feat: add surrealdb template (#505) 2025-11-08 13:25:42 -06:00
Aj7Ay
18e824c214 Fix(Documenso): Upgrade to v1.12.10 and add automatic signing certificate generation (fixes #1767) (#513)
- Upgraded Documenso image from v1.5.6-rc.2 to v1.12.10
- Added automatic signing certificate generation in entrypoint script
- Certificate generated at /app/certs/cert.p12 on container startup
- Removed root user requirement (runs as user 1001)
- Uses pre-installed OpenSSL from v1.12.10 image
- Added environment variables for certificate configuration
- Resolves pending status issue after both parties sign

Co-authored-by: ajay <ajay@practical-devsecops.com>
2025-11-08 00:45:50 -06:00
Harikrishnan Dhanasekaran
4403b5fffb Feat:Added the Clickhouse Template -#491 (#501) 2025-11-08 00:38:00 -06:00
kipavy
dd5d81fc46 feat: Add enshrouded template (#499)
* enshrouded template

* added enshrouded docs and website

* enshrouded no docs/website
2025-11-08 00:36:12 -06:00
Shadyar Bakr
24a80d2fdf fix(rybbit): add DOMAIN_NAME env var to resolve Invalid Origin issue (#496)
* Update docker-compose.yml to include DOMAIN_NAME variable

* Add DOMAIN_NAME to template
2025-11-08 00:19:23 -06:00
Sebastian G
b6eb95e712 Add Postgresus templates to automate postgres backups (#490)
* add postgresus templates to automate backups

* Simplify docker-compose.yml for postgresus service

Removed unnecessary container name and network configuration.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-11-08 00:16:35 -06:00
Sebastian G
970aabfe3c Add Anubis bot/crawler protector template (#488)
* Add anubis bot/crawler protector template

Add Anubis bot/crawler protector to prevent ai bots to crawl all your website information and protecto from bots scanners

Add anubis.webp logo
Add docker-compose.yml compose
Add template.toml configuration
Upd meta.json with anubis info

* dont know what is this

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-11-08 00:13:37 -06:00
Dennis Khylkouski
065caff7e7 Switch PocketBase template to adrianmusante/pocketbase image (#487)
* Switch PocketBase template to adrianmusante/pocketbase image

* Removed commented optional encryption_key
2025-11-08 00:10:51 -06:00
Muhammad Haad Bin Zahid
aa0f38d0dd Update Blinkospace image version to 1.6.3 (#484)
On Dockerhub, blinko does not have the latest tag, so I changed it to the latest version, which is 1.6.3 at the time of pr.
2025-11-08 00:05:46 -06:00
Ramiro Mendez
8ace1665b7 Add Evershop template (#483)
* Add Evershop template

* Update configuration

* Update docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-11-08 00:03:45 -06:00
Wladimir Kirianov
dc6e944424 fix(docker): update Booklore image path to new GHCR repository (#480) 2025-11-08 00:00:19 -06:00
Serkan Bektaş
b05d16fad9 Update Directus image version to 11.12.0 (#443) 2025-11-07 23:48:00 -06:00
Ajsel Žilić
6bb98a9b8d feat: Add plunk template (#494) 2025-11-07 23:43:09 -06:00
Harikrishnan Dhanasekaran
2d4a7b6941 Feat : Add template for Valkey (#15) (#508)
* feat: Add Valkey template (#15)

* fixed the build issue

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-11-07 23:40:33 -06:00
Harikrishnan Dhanasekaran
72eda8f5d4 Feat : Add BigCapital template -#47 (#511)
* feat: add BigCapital template

* Refactor docker-compose.yml to use ports instead of expose

Removed container names and exposed sections for services. Updated to use ports instead of expose for webapp, server, mysql, mongo, redis, and gotenberg services.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-11-07 23:37:11 -06:00
Harikrishnan Dhanasekaran
e562010556 feat: Add Grist template (#46) (#510) 2025-11-07 23:30:37 -06:00
Harikrishnan Dhanasekaran
186528df56 Feat : Add HashiCorp Vault template (#512)
* feat: add HashiCorp Vault template

* Update blueprints/vault/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-11-07 23:29:04 -06:00
Harikrishnan Dhanasekaran
dbc2cee968 Feat : Add Netdata monitoring template -#105 (#515)
* feat: add Netdata monitoring template

* Update blueprints/netdata/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-11-07 23:27:10 -06:00
Sunil Shrestha
ebb9e685f9 Feat/mixpost (#457)
* feat(mixpost): add Mixpost blueprint with Docker Compose, template, logo, and metadata

* chore(mixpost): add environment variable placeholders to mixpost service in docker-compose.yml

* chore(meta): add missing newline at end of meta.json

* Update configuration values to use quotes

* Update blueprints/mixpost/template.toml

---------

Co-authored-by: Sunil Shrestha <sunil.shrestha@tekkon.com.np>
Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-10-25 19:09:21 -06:00
Yury
11742478d5 Setup defaults according to obsidian-livesync requirements (#445) 2025-10-25 19:04:46 -06:00
Jainil Prajapati
313dc9d57e docs: reorganize GitHub directory structure and improve PR template (#413)
* docs: reorganize GitHub directory structure and improve PR template

- Move pull_request_template.md from .github/.github/ to .github/
- Change PR template heading from markdown level 2 to level 1
- Convert README.md reference in PR template to a markdown link

* chore: move pull request template to uppercase directory

Relocated pull_request_template.md from .github/ to .github/PULL_REQUEST_TEMPLATE/
to align with GitHub's recommended directory structure. No content changes.

* added

* chore: remove outdated pull request templates for bug fixes, documentation updates, and feature additions

* chore: remove outdated pull request template

* chore: replace old pull request template with a new structured version

* chore: add contributing guidelines for Dokploy Open Source Templates

* chore: update contributing guidelines and refine pull request template

- Changed validation step in contributing guidelines to use `node dedupe-and-sort-meta.js`.
- Simplified pull request template by removing unnecessary sections and improving checklist formatting.

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-10-25 18:53:49 -06:00
Mauricio Siu
680ca01f5f Remove package.json and package-lock.json to clean up project dependencies; update README with usage instructions for deduplicating and sorting meta.json. 2025-10-25 18:38:21 -06:00
Mauricio Siu
0fc92ffacc Remove bun.lock file to clean up project dependencies and lockfile management. 2025-10-25 18:37:02 -06:00
Mauricio Siu
2611e2ca13 Remove bun.lock file to clean up project dependencies and streamline the build process. 2025-10-25 18:35:58 -06:00
Mauricio Siu
ff83501904 Remove Makefile, README, and script.js for meta.json processing; update package.json to reflect changes in scripts. 2025-10-25 18:35:29 -06:00
starascendin
800809285b Change group ID from 998 to 988 in docker-compose (#461) 2025-10-25 18:33:00 -06:00
Vincent Vu
d155f2f1f6 feat(blueprints): n8n + worker/runner + redis/postgres + ollama & fix(blueprints): twentycrm (#364)
* feat(n8n): add n8n runner with Postgres and Ollama configuration

* feat(meta): update n8n runner version to nightly and enhance description

* feat(docker): update PostgreSQL image to 17-alpine and enhance healthcheck command

* feat(n8n): update environment variables and enhance configuration for Redis and Ollama integration

* feat(n8n): replace hardcoded N8N_PROXY_HOPS with environment variable and fix encryption key variable name

* feat(n8n): comment out SMTP environment variables in docker-compose.yml

* feat(n8n): set default value for N8N_PROXY_HOPS environment variable

* Update blueprints/n8n-runner-postgres-ollama/docker-compose.yml

* Update blueprints/n8n-runner-postgres-ollama/docker-compose.yml

* Update blueprints/n8n-runner-postgres-ollama/docker-compose.yml

* Update blueprints/n8n-runner-postgres-ollama/docker-compose.yml

* Update blueprints/n8n-runner-postgres-ollama/docker-compose.yml

* feat(twenty): update HTTP protocol handling in environment variables and enhance healthcheck configuration

* refactor(docker-compose): remove container names for n8n services

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-10-25 18:32:26 -06:00
devdamo
6767f87261 Add RustDesk blueprint for self-hosted remote desktop (#331)
* Add RustDesk blueprint for self-hosted remote desktop

Introduces a new blueprint for RustDesk, including Docker Compose configuration, metadata, icon, and template files. This enables easy deployment of a self-hosted RustDesk remote desktop server.

* Update RustDesk logo file reference

Changed the logo file in meta.json from 'rustdesk.svg' to 'rustdesk.png' to reflect the correct image format.

* Add RustDesk to meta.json

Introduced RustDesk as a new entry in meta.json with relevant metadata, including description, logo, links, and tags for remote desktop and self-hosted productivity.

* Delete meta.json

* Update meta.json

* Update meta.json
2025-10-25 18:15:59 -06:00
Marcel Wolf
b598ba9b0f Update Keycloak deployment for Dokploy with reverse proxy support (#402)
* Update KC envs and bump version

use the v2 ENV Variables like KC_BOOTSTRAP_ADMIN_USERNAME

* Update blueprints/keycloak/docker-compose.yml

* Update blueprints/keycloak/docker-compose.yml

---------

Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com>
2025-10-25 18:10:54 -06:00
Killian
6d564b6f56 feat: Update signoz template (#456) 2025-10-25 18:06:23 -06:00
Harikrishnan Dhanasekaran
e3eb697c89 fix(automatisch): resolve Bad Gateway by fixing port mismatch (443→3000) (#470) 2025-10-25 17:56:45 -06:00
Yury
80657e2a90 Add metadata.db generation for calibre-web (#444)
* Add metadata.db generation for calibre-web

* Attempt to fix template
2025-10-25 17:39:12 -06:00
Masum Gökyüz
fb3c2e2952 feat(prometheus): add Prometheus monitoring blueprint with Docker Com… (#463)
* feat(prometheus): add Prometheus monitoring blueprint with Docker Compose, template, and metadata

Introduced a new blueprint for Prometheus, including a Docker Compose setup, configuration template, SVG logo, and metadata entry for streamlined deployment and monitoring capabilities.

* feat(prometheus): add configuration template for Prometheus monitoring

Enhanced the Prometheus blueprint by adding a configuration template for prometheus.yml, defining global settings, scrape intervals, and example scrape configurations. This addition streamlines the setup process for users deploying Prometheus monitoring.

* chore(prometheus): remove version specification from Docker Compose file

Eliminated the version line from the Docker Compose configuration for Prometheus to streamline the setup and avoid potential compatibility issues with future Docker Compose versions.
2025-10-25 17:38:41 -06:00
Ricardo 🇲🇽
2851192d38 feat(immich): upgrade Docker images for Immich services (#458) 2025-10-25 17:37:29 -06:00
Yury
38fdb8c095 Added Inngest v1.12.1 (#462)
* Added Inngest v1.12.1

* Fixed docker-compose name

* Fixed metajson
2025-10-25 17:33:05 -06:00
CorentinMre
c7e6c353ac Umami update version 2.16.1 -> 2.19.0 (#473)
* feat(umami): update umami version

* feat(umami): update umami v2.19.0 in the meta file
2025-10-25 17:31:34 -06:00
Harikrishnan Dhanasekaran
cb04094d45 Feat: Add Docling-Serve Template for Document Processing -#464 (#465)
* feat: add docling-serve template for document processing

* updated for the build issues
2025-10-25 17:29:13 -06:00
Jainil Prajapati
469cfbb124 feat: add networking toolbox blueprint (#474)
Add docker-compose.yml for the networking-toolbox service with health checks and environment variables. Include networking-toolbox.png logo and template.toml for configuration. Update meta.json with blueprint metadata to enable self-hosting of networking utilities.
2025-10-25 01:54:34 -06:00
Jainil Prajapati
7cb050772f chore: add bun.lock to ensure consistent dependency versions (#471)
Added bun.lock file to lock versions of project dependencies, ensuring reproducible builds and consistent environments across different setups using Bun as the package manager.
2025-10-25 01:53:51 -06:00