Deploy Pingvin Share - Google Drive Alternative
Self-hosted file-sharing platform
pingvin-share
Just deployed
/opt/app/backend/data
Deploy and Host Pingvin Share on Railway
Pingvin Share is an open-source, self-hosted file sharing platform designed as a lightweight alternative to commercial services. It allows users to upload files, set expiration dates, secure shares with passwords, and send download links via email. It provides an intuitive web interface for managing shared files efficiently.
About Hosting Pingvin Share
Railway hosts Pingvin Share using its containerized infrastructure, allowing the prebuilt Docker image to run seamlessly. Railway manages the underlying compute, reverse proxying, public networking, domain generation, and SSL/TLS termination automatically.
Pingvin Share uses SQLite by default to store metadata and application configurations, alongside local filesystem storage for uploaded assets. Because container file systems are ephemeral, attaching persistent storage via a Railway Volume is required to prevent data loss across deployments or restarts.
Railway simplifies network routing by routing incoming HTTPS traffic directly to the container's configured web port. Scalability can be achieved through resource upgrades, and custom environments can easily be configured via environment variables.
Common Use Cases
- Self-Hosted File Sharing: Share files securely with custom expiration limits, password protection, and download restrictions.
- Team & Workspace Distribution: Send media, documents, or project assets to colleagues or external clients via email notifications.
- Reverse Share Request Links: Allow unauthenticated third parties to securely upload files directly into your workspace.
Dependencies for Pingvin Share Hosting
- Railway Volume: Persistent storage mounted to persist database configurations and uploaded files.
Deployment Dependencies
Implementation Details
Docker
The deployment relies on the official prebuilt Docker image:
stonith404/pingvin-share
Public Networking
| Option | Value |
|---|---|
| Proxy Type | HTTP Proxy |
| Target Port | 3333 |
Environment Variables
| Variable | Required | Description |
|---|---|---|
PORT | Yes | HTTP port on which the web server listens. Set to 3333. |
TRUST_PROXY | Yes | Set to true to enable reverse proxy header processing behind Railway's proxy. |
PORT=3333
TRUST_PROXY=true
Persistent Storage
Persistent storage is required to store uploaded files and application database records.
- Open your Pingvin Share service in Railway.
- Go to Settings > Volumes.
- Click Add Volume.
- Set Mount Path:
/opt/app/backend/data
Without this volume, uploaded files and settings will be deleted whenever the service redeploys.
Database
Pingvin Share includes an embedded SQLite database stored inside /opt/app/backend/data/pingvin-share.db. No external database service (such as PostgreSQL or MySQL) is required.
Build & Start
No custom build or start commands are required. Railway deploys directly from the prebuilt Docker image.
Accessing the Application
- Go to Settings > Networking in your Railway service.
- Click Generate Domain.
- Access the generated URL in your browser.
- Follow the on-screen prompts to register the initial administrator account.
Why Deploy Pingvin Share on Railway?
Railway provides a seamless, zero-friction cloud platform designed to deploy applications effortless without managing server infrastructure. With automatic SSL/TLS termination, custom domain management, instant scale, integrated environment variable management, and reliable volume persistence, Railway ensures your deployments remain fast, secure, and resilient.
Template Content
pingvin-share
stonith404/pingvin-share:latest