Railway

Deploy Pingvin Share

Self-hosted file sharing and link sharing for teams.

Deploy Pingvin Share

Just deployed

/opt/app/backend/data

Deploy and Host Pingvin Share on Railway

Status: DRAFT (manual publish). The unpublished template draft is ready for editor reconciliation. No marketplace deployment link exists until publication is approved and completed.

Pingvin Share is a self-hosted file-sharing platform and a lightweight alternative to WeTransfer. It lets people upload files, create share links with expiration dates, password protection, visitor limits, recipient email, reverse shares, and optional OIDC or LDAP authentication. Data remains on infrastructure controlled by the deployer.

About Hosting Pingvin Share

Hosting Pingvin Share on Railway requires one public service running the immutable v1.13.0 container image, a target port of 3000, and persistent storage for the SQLite database and uploaded images. This draft also uses a safe PORT=3000 Railway setting and a start-command override that keeps the frontend on 3333 and backend on 8080. Railway currently permits only one volume per service, so the draft captures the backend volume but cannot yet represent the requested second image volume. Resolve that storage constraint before manual publication. No database, queue, external API, or credential is required.

Common Use Cases

  • Share large files with expiring links instead of email attachments.
  • Run a private, self-hosted alternative to WeTransfer for a small team.
  • Protect shares with passwords, visitor limits, recipient email, or authentication integrations.

Dependencies for Pingvin Share Hosting

  • The digest-pinned image stonith404/pingvin-share:v1.13.0@sha256:6bf2bcd3043ee68cb61264f0857511ccf7f212fdb984382b7f2d491635184ad6.
  • One Railway service with an HTTPS domain targeting port 3000.
  • The intended persistent mounts /opt/app/backend/data and /opt/app/frontend/public/img; the second mount remains blocked by Railway's one-volume-per-service limitation in this draft.

Deployment Dependencies

Implementation Details

The source service uses this safe start-command override so Railway can health-check port 3000 without making Pingvin Share's backend and Caddy frontend contend for the same port:

env PORT=3333 BACKEND_PORT=8080 sh ./scripts/docker/entrypoint.sh

Railway's current volume limitation must be resolved before the overview is used for a published marketplace listing.

Why Deploy Pingvin Share on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying Pingvin Share on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


Template Content

More templates in this category

View Template
Rocky Linux
[Jul'26] Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀

codestorm
36
View Template
Foundry Virtual Tabletop
A Self-Hosted & Modern Roleplaying Platform

Lucas
71
View Template
Letta Code Remote
Run a Letta Code agent 24/7. No inbound ports, just deploy.

Letta
51