Skip to content

Conversation

fell-lucas
Copy link
Contributor

@fell-lucas fell-lucas commented Aug 15, 2025

🛑 New scripts must first be submitted to ProxmoxVED for testing.
PRs for new scripts that skip this process will be closed.


✍️ Description

Add Ghostfolio investment tracker script for LXC container deployment. Ghostfolio is an open source wealth management software that helps users track stocks, ETFs, and cryptocurrencies across multiple platforms. This implementation provides native installation without Docker dependencies, using PostgreSQL 15, Redis, and Node.js 22.

https://github.com/ghostfolio/ghostfolio

🔗 Related PR / Issue

Link: community-scripts/ProxmoxVE#368

✅ Prerequisites (X in brackets)

  • Self-review completed – Code follows project standards.
  • Tested thoroughly – Changes work as expected.
  • No breaking changes – Existing functionality remains intact.
  • No security risks – No hardcoded secrets, unnecessary privilege escalations, or permission issues.

🛠️ Type of Change (X in brackets)

  • 🐞 Bug fix – Resolves an issue without breaking functionality.
  • New feature – Adds new, non-breaking functionality.
  • 💥 Breaking change – Alters existing functionality in a way that may require updates.
  • 🆕 New script – A fully functional and tested script or script set.
  • 🌍 Website update – Changes to website-related JSON files or metadata.
  • 🔧 Refactoring / Code Cleanup – Improves readability or maintainability without changing functionality.
  • 📝 Documentation update – Changes to README, AppName.md, CONTRIBUTING.md, or other docs.

🔍 Code & Security Review (X in brackets)

  • Follows Code_Audit.md & CONTRIBUTING.md guidelines
  • Uses correct script structure (AppName.sh, AppName-install.sh, AppName.json)
  • No hardcoded credentials

📋 Additional Information (optional)

Files included:

  • ct/ghostfolio.sh - Container creation and update script
  • install/ghostfolio-install.sh - Native installation script (no Docker)
  • frontend/public/json/ghostfolio.json - Frontend metadata

Key features:

  • Native installation using PostgreSQL 15, Redis, and Node.js 22
  • Builds from source using official Ghostfolio build process
  • Secure credential generation with random passwords
  • Proper systemd service with dependencies
  • Update functionality with backup creation
  • Resource allocation: 2 CPU, 2GB RAM, 8GB disk

Security measures:

  • Random password generation for database and Redis
  • Random salt and JWT secret generation
  • No hardcoded credentials
  • Unprivileged container by default

@tremor021
Copy link
Member

@fell-lucas please dont mark comments as resolved if you didn't push a change that addresses the comment

@fell-lucas fell-lucas marked this pull request as ready for review August 24, 2025 02:03
@fell-lucas fell-lucas requested review from a team as code owners August 24, 2025 02:03
@fell-lucas
Copy link
Contributor Author

Rebased and updated fork, also suggestions were handled, thanks.

@MickLesk MickLesk merged commit 327f26d into community-scripts:main Sep 9, 2025
0 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants