[PR #717] refactor(bigcapital): improve docker-compose reliability #2843

Open
opened 2026-04-23 03:36:18 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/Dokploy/templates/pull/717
Author: @adryserage
Created: 2/20/2026
Status: 🔄 Open

Base: canaryHead: refactor/bigcapital


📝 Commits (2)

  • 127b049 refactor(bigcapital): improve docker-compose reliability
  • f4ee6ad Update blueprints/bigcapital/docker-compose.yml

📊 Changes

1 file changed (+67 additions, -24 deletions)

View changed files

📝 blueprints/bigcapital/docker-compose.yml (+67 -24)

📄 Description

Summary

Improves the Bigcapital docker-compose template for better reliability and Dokploy compatibility.

Changes

  • **\ports\ → \expose**: All services now use \expose\ since Traefik handles external routing
  • Database migrations: Added \database_migration\ init container that runs migrations before the server starts (prevents race conditions)
  • MinIO for S3: Added \minio\ + \minio-init\ services for self-contained S3-compatible storage
  • Gotenberg URL: Hardcoded to \http://gotenberg:3000\ (internal Docker DNS) instead of env var
  • Healthchecks: Added healthcheck for MinIO
  • Cleanup: Removed trailing whitespace and empty lines

Context

Clean resubmission of #578 (closed for inactivity). No review feedback was given on the original — changes are identical.

Testing

  • Verified docker-compose syntax with \docker compose config\
  • Services start in correct dependency order: mysql → migration → server

Greptile Summary

Refactored Bigcapital template to improve reliability by replacing ports with expose, adding database migration init container, and integrating self-contained MinIO for S3 storage.

Major improvements:

  • Database migration race condition eliminated via init container pattern
  • MinIO + minio-init services enable self-contained S3-compatible storage
  • Proper use of expose instead of ports (Traefik handles external routing)
  • Healthchecks ensure correct service startup order

Issues requiring attention:

  • Missing version: "3.8" declaration violates Dokploy style guide requirements
  • Gotenberg port configuration mismatch: hardcoded as 3000 in docker-compose but template.toml specifies 9000
  • MinIO bucket set to public download - verify this is intentional for your security requirements

Confidence Score: 3/5

  • This PR is safe to merge with moderate risk - requires minor fixes before production use
  • Score reflects solid architectural improvements (init containers, MinIO integration, proper expose usage) but requires critical fixes: missing version declaration violates Dokploy requirements, Gotenberg port mismatch between docker-compose and template.toml could break PDF generation, and public S3 bucket needs security review
  • Pay attention to docker-compose.yml (missing version, port conflicts) and verify template.toml Gotenberg configuration matches

Last reviewed commit: 127b049

Context used:

  • Context from dashboard - AGENTS.md (source)

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

## 📋 Pull Request Information **Original PR:** https://github.com/Dokploy/templates/pull/717 **Author:** [@adryserage](https://github.com/adryserage) **Created:** 2/20/2026 **Status:** 🔄 Open **Base:** `canary` ← **Head:** `refactor/bigcapital` --- ### 📝 Commits (2) - [`127b049`](https://github.com/Dokploy/templates/commit/127b04969a29485fb1eea4209be28563b92a4bf2) refactor(bigcapital): improve docker-compose reliability - [`f4ee6ad`](https://github.com/Dokploy/templates/commit/f4ee6ad15752ac4913c278dbe6c3c2bab02ab869) Update blueprints/bigcapital/docker-compose.yml ### 📊 Changes **1 file changed** (+67 additions, -24 deletions) <details> <summary>View changed files</summary> 📝 `blueprints/bigcapital/docker-compose.yml` (+67 -24) </details> ### 📄 Description ## Summary Improves the Bigcapital docker-compose template for better reliability and Dokploy compatibility. ## Changes - **\ports\ → \expose\**: All services now use \expose\ since Traefik handles external routing - **Database migrations**: Added \database_migration\ init container that runs migrations before the server starts (prevents race conditions) - **MinIO for S3**: Added \minio\ + \minio-init\ services for self-contained S3-compatible storage - **Gotenberg URL**: Hardcoded to \http://gotenberg:3000\ (internal Docker DNS) instead of env var - **Healthchecks**: Added healthcheck for MinIO - **Cleanup**: Removed trailing whitespace and empty lines ## Context Clean resubmission of #578 (closed for inactivity). No review feedback was given on the original — changes are identical. ## Testing - Verified docker-compose syntax with \docker compose config\ - Services start in correct dependency order: mysql → migration → server <!-- greptile_comment --> <h3>Greptile Summary</h3> Refactored Bigcapital template to improve reliability by replacing `ports` with `expose`, adding database migration init container, and integrating self-contained MinIO for S3 storage. **Major improvements:** - Database migration race condition eliminated via init container pattern - MinIO + minio-init services enable self-contained S3-compatible storage - Proper use of `expose` instead of `ports` (Traefik handles external routing) - Healthchecks ensure correct service startup order **Issues requiring attention:** - Missing `version: "3.8"` declaration violates Dokploy style guide requirements - Gotenberg port configuration mismatch: hardcoded as 3000 in docker-compose but template.toml specifies 9000 - MinIO bucket set to public download - verify this is intentional for your security requirements <h3>Confidence Score: 3/5</h3> - This PR is safe to merge with moderate risk - requires minor fixes before production use - Score reflects solid architectural improvements (init containers, MinIO integration, proper expose usage) but requires critical fixes: missing version declaration violates Dokploy requirements, Gotenberg port mismatch between docker-compose and template.toml could break PDF generation, and public S3 bucket needs security review - Pay attention to `docker-compose.yml` (missing version, port conflicts) and verify `template.toml` Gotenberg configuration matches <sub>Last reviewed commit: 127b049</sub> <!-- greptile_other_comments_section --> **Context used:** - Context from `dashboard` - AGENTS.md ([source](https://app.greptile.com/review/custom-context?memory=09330bde-2058-497c-9c64-ceae637fb5b2)) <!-- /greptile_comment --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-23 03:36:18 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/templates#2843