3.2 KiB
eLabFTW Cloudron Package Build Notes
This document provides instructions for building, testing, and deploying the eLabFTW Cloudron package.
Package Overview
This package deploys eLabFTW, an open-source electronic laboratory notebook (ELN) for researchers, on Cloudron. The package:
- Uses the MySQL addon for database storage
- Uses the localstorage addon for file storage
- Includes NGINX and PHP-FPM configuration
- Supports optional LDAP authentication through Cloudron
Building the Package
-
Create a new directory for your package:
mkdir elabftw-cloudron cd elabftw-cloudron
-
Save all the provided files to this directory:
- CloudronManifest.json
- Dockerfile
- start.sh
- nginx.conf
- supervisord.conf
-
Make the start.sh file executable:
chmod +x start.sh
-
Download the eLabFTW logo for the package icon:
curl -o logo.png https://raw.githubusercontent.com/elabftw/elabftw/master/src/ts/img/logo.png
-
Build the package:
cloudron build
Testing the Package
-
Install the package on your Cloudron for testing:
cloudron install —location elabftw.example.com
-
After installation, visit the application URL and complete the initial setup:
- Create the Sysadmin account
- Configure your teams and user groups
- Set up any initial templates or protocols
-
Test the following functionality:
- User authentication (local accounts)
- File uploads (should be stored in /app/data/uploads)
- Database connection (should be using Cloudron MySQL)
- LDAP authentication (if enabled)
- General application functionality
Deploying to Production
-
Once testing is complete, you can deploy to production:
cloudron install —location elabftw.yourdomain.com
-
For production use, consider:
- Setting up regular backups of the Cloudron app
- Configuring LDAP authentication if needed (via Cloudron UI)
- Adjusting memory limits in CloudronManifest.json if necessary based on usage
Post-Installation
After installation, you’ll need to:
- Create a Sysadmin account when first accessing the application
- Configure teams and user groups
- Set up experiment templates and protocols as needed
- Consider enabling and configuring LDAP authentication for easier user management
Troubleshooting
- Check logs with
cloudron logs -f elabftw
- If database issues occur, verify the MySQL addon is properly configured
- For file storage issues, check permissions on /app/data directories
- For authentication issues, verify LDAP configuration (if using LDAP)
Updates
When a new version of eLabFTW is released:
- Update the git clone command in the Dockerfile to point to the latest release (or specific tag)
- Rebuild and update your package:
cloudron build cloudron update —app elabftw.yourdomain.com
Customization
You can customize the package by:
- Modifying the config.yml template in /tmp/data/config to set default values
- Adjusting PHP settings in the Dockerfile or php.ini
- Modifying NGINX configuration for special requirements
- Adjusting memory limits in CloudronManifest.json based on usage patterns