PasteVault is a secure, self-hosted pastebin service for NethServer 8 that allows you to share text snippets, code, and documents with customizable expiration times and access controls.
- 🔒 Secure Sharing - Host your own pastebin with full control over data
- ⏰ Expiration Control - Set custom expiration times for pastes
- 🌐 Web Interface - Clean, modern web UI for easy management
- 🔧 NethServer Integration - Seamless integration with NS8 ecosystem
- 🛡️ SSL/TLS Support - Automatic HTTPS with Let's Encrypt certificates
- 📊 Admin Dashboard - Monitor and manage your paste vault
- 🌍 Multi-language - Support for multiple languages via Weblate
- 💾 Backup & Restore - Built-in backup capabilities
Add the PasteVault module to your NethServer 8 cluster:
add-module ghcr.io/geniusdynamics/pastevault:latest 1Expected Output:
{
"module_id": "pastevault1",
"image_name": "pastevault",
"image_url": "ghcr.io/geniusdynamics/pastevault:latest"
}Configure your PasteVault instance (replace pastevault1 with your instance name):
api-cli run configure-module --agent module/pastevault1 --data - <<EOF
{
"host": "pastevault.yourdomain.com",
"http2https": true,
"lets_encrypt": true
}
EOFConfiguration Options:
host: Your fully qualified domain namehttp2https: Enable HTTPS redirection (recommended:true)lets_encrypt: Request Let's Encrypt SSL certificate (recommended:true)
Once configured, access your PasteVault at: https://pastevault.yourdomain.com
api-cli run get-configuration --agent module/pastevault1api-cli run update-module --data '{
"module_url": "ghcr.io/geniusdynamics/pastevault:latest",
"instances": ["pastevault1"],
"force": true
}'remove-module --no-preserve pastevault1Check module environment variables:
runagent -m pastevault1 envBecome the module agent for debugging:
runagent -m pastevault1List running containers:
runagent -m pastevault1
podman psInspect container environment:
podman exec pastevault-app envAccess container shell:
podman exec -ti pastevault-app shRun the test suite using Robot Framework:
./test-module.sh <NODE_ADDR> ghcr.io/geniusdynamics/pastevault:latestPasteVault automatically discovers and integrates with your centralized smarthost setup:
- Auto-discovery: The
bin/discover-smarthostscript keeps settings synchronized - Event-driven updates: Changes to smarthost configuration automatically restart services
- Redis integration: Settings are stored and retrieved from Redis keys
PasteVault supports multiple languages through Weblate:
- English (en)
- Spanish (es)
- Italian (it)
- Basque (eu)
- Portuguese (pt)
- Portuguese (Brazil) (pt_BR)
- German (de)
- Add GitHub Weblate app to your repository
- Add your repository to hosted.weblate.org or contact a NethServer developer
This project is licensed under the GPL-3.0 License - see the LICENSE file for details.
- Documentation: NethServer 8 Docs
- Issues: GitHub Issues
- Discussions: NethServer Community
Built with ❤️ for the NethServer 8 ecosystem