Deploy MicroBin

Self-hosted pastebin and file sharing with password-protected uploads

Deploy MicroBin

Just deployed

/app/microbin_data

Deploy and Host MicroBin on Railway

MicroBin is a small, self-hosted pastebin and file-sharing web app written in Rust. You can share text, code with syntax highlighting, files and short URLs through one link, with optional expiry, burn-after-reading and password encryption. It runs as a single binary with an SQLite database.

About Hosting MicroBin

MicroBin needs one container, a persistent folder for its SQLite database and uploaded files, and a public HTTPS address. This template runs the official danielszabo99/microbin image (version 2.1.4, pinned by digest) with a Railway volume at /app/microbin_data and a Railway domain. On first deploy it generates two passwords: one for the admin page and one that is required to create pastes, so strangers can't use your instance to host files. Anyone with a paste's link can still view it. Links and QR codes use your Railway domain, and telemetry is turned off.

Common Use Cases

  • Share code snippets, logs or config files with a teammate through a short link
  • Send files or screenshots that expire after a set time or after being read
  • Keep a private, self-hosted alternative to public pastebin and file-drop sites

Dependencies for MicroBin Hosting

  • The official MicroBin Docker image (danielszabo99/microbin:2.1.4)
  • A Railway volume for the SQLite database and uploaded files

Deployment Dependencies

Implementation Details

First login. Open the service's Variables tab on Railway. MICROBIN_UPLOADER_PASSWORD is what you type in the "Uploader Password" box when you create a paste. MICROBIN_ADMIN_PASSWORD (user admin) opens the /admin page, which lists every paste and shows the active settings.

Defaults set by the start command. Each one can be changed by adding the variable to the service:

VariableDefaultEffect
MICROBIN_READONLYtrueRequired for MicroBin to check the uploader password. Set it to false to let anyone upload
MICROBIN_DEFAULT_PRIVACYunlistedNew pastes stay off the public /list page unless the uploader picks "Public"
MICROBIN_DISABLE_TELEMETRYtrueNo usage data is sent to the MicroBin project
MICROBIN_QRtrueShows a QR code for each paste
MICROBIN_ADMIN_USERNAMEadminUser name for the admin page

Other options, such as MICROBIN_TITLE, MICROBIN_DEFAULT_EXPIRY, MICROBIN_MAX_EXPIRY or MICROBIN_MAX_FILE_SIZE_UNENCRYPTED_MB, are listed in the configuration docs linked above.

Privacy. MicroBin paste IDs are short (three animal names, about 65,000 combinations), so an "unlisted" paste is hidden from the list but its link can be guessed. For anything sensitive, choose "Private" (encrypted on the server with a password) or "Secret" (encrypted in your browser) when you create the paste.

Database fix. MicroBin 2.1.2 to 2.1.4 create a fresh SQLite table whose column order doesn't match the code that loads it, so after a restart the admin page and the list show no pastes and extra attachments go missing (upstream issue #358). Before the first start, the start command writes an empty database with the column order that installs upgraded from 2.1.0 use, which loads correctly. It never touches an existing database.

Known upstream issue. In 2.1.2 and later, a large upload that takes a long time can lose its file if someone opens another paste while it is still uploading (upstream issue #370).

Why Deploy MicroBin 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 MicroBin 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
RustFS | (Just Updated) S3 Object Store, Public URL and Keys Set
S3-compatible object store, keys and public URL preset, volume kept

SuperSlowSloth
0
View Template
TimescaleDB
A PostgreSQL-based time-series database for analytics on Railway.

Rakit
1
View Template
NEW
Neo4j 2026.10 Community
Neo4j graph database with APOC, Browser, Bolt TCP proxy and a volume

My Projects
0