-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Description
1Panel Version
2.0.0
Please describe your needs or suggestions for improvements
Currently, users face a choice between two deployment methods, each with significant trade-offs:
The Official App Store: Incredibly convenient for one-click installation, updates, and backups, but the selection is limited to what is officially provided.
Custom Docker Compose: Offers ultimate flexibility to run any containerized application, but these deployments are disconnected from 1Panel's integrated management features, such as automated backups and simplified configuration. Creating a full-fledged custom app repository to solve this is overly complex for most users.
This creates a significant experience gap between the simplicity of the official App Store and the flexibility of custom deployments. There is a clear need for a middle ground that bridges this gap.
Please describe the solution you suggest
To address this, we propose a new feature that allows users to create a managed application simply by pasting its Docker Compose configuration. This solution would seamlessly blend the ease of the App Store with the power of custom containers.
Core Workflow:
Paste to Install: Users would navigate to the App Store and find an option like "Create from Compose." They could then paste the raw docker-compose.yml content into a text field.
Intelligent Parsing & Parameterization: 1Panel would automatically parse the Compose file, identifying key, user-configurable parameters like:
Port mappings (e.g., 8080:80)
Volume mounts (e.g., ./data:/data)
Environment variables
Interactive Setup Form: Instead of requiring users to manually edit the file, 1Panel would dynamically generate a simple setup form. It would automatically convert parsed values into 1Panel variables (e.g., rewriting the host port 8080 to ${PANEL_APP_PORT_HTTP}) and prompt the user for input in clean, human-readable fields.
Enhanced Features for a Complete Experience:
Custom Icon: During the setup process, allow the user to upload a custom icon (.png, .svg, etc.) for their new application. This enhances visual organization and personalization.
Save as a Reusable "Local App": Once configured, the application—along with its Compose definition, user-set variables, and custom icon—should be saved as a private, reusable "local app" within the user's 1Panel instance.
Export and Share: This "local app" definition should be exportable. This would be a game-changer for users managing multiple servers. Possible implementations include:
Local Backup: Exporting the app definition as a .json or .yaml file, which can be imported into another 1Panel instance for true one-click deployment.
Git Sync: Automatically committing the app definition to a designated private GitHub repository, allowing for version control and easy sharing across a user's infrastructure.
Additional Information
No response