by techbleed


Password Pusher Front Page

PasswordPusher is an opensource application to communicate passwords over the web. Links to passwords expire after a certain number of views and/or time has passed.

Hosted at but you can also easily run your own instance internally on Docker, Kubernetes, OpenShift or on Heroku with just a few steps.

I previously posted this project on Reddit which provided some great feedback - most of which has been implemented.

Build Status

See Also

The PasswordPusher Alfred Workflow for Mac users.

Deploy to Heroku

One click deploy to Heroku and get a fully configured running private instance of PasswordPusher immediately.


Deploy in Containers

PasswordPusher can be deployed to Kubernetes, OpenShift or any Docker host.

See the containerization directory for details. Docker images hosted in

Deploy Manually

Make sure you have git and Ruby installed and then:

git clone
cd PasswordPusher
gem install bundler
bundle install --without development production test --deployment
bundle exec rake assets:precompile
RAILS_ENV=private bundle exec rake db:setup
foreman start internalweb

Then view the site @ http://localhost:5000/.

Note: You can change the listening port by modifying the Procfile


Command not found: bundle

If you get something like Command not found: bundle, then you need to run

gem install bundler

If you get something like 'Command not found: gem', then you need to install Ruby. :)


If the 'bundle install' fails with 'checking for sqlite3.h... no', you have to install the sqlite3 packages for your operating system. For Ubuntu, the command is:

sudo apt-get install sqlite3 ruby-sqlite3 libsqlite3-ruby libsqlite3-dev

Other Information


With the internal deploy process described above, SQLite3 is provided by default for a quick and easy setup of the application.

If you plan to use PasswordPusher internally at your organization and expect to have multiple users concurrently creating passwords, it's advised to move away from SQLite3 as it doesn't support write concurrency and errors will occur.

For example, on, I run the application with a Postgres database.

Initiated from this discussion on reddit.

See How to Switch to Another Backend Database for details.

Note for Existing Users

If you're already hosting your own private instance of PasswordPusher, make sure to do a periodic git pull from time to time to always get the latest updates.

You can always checkout out the latest commits to see what's been updated recently.


Thanks to:

See Also

Kamil Procyszyn put together a nice PowerShell script for Password Pusher.

lnfnunes created a NodeJS CLI wrapper for Password Pusher to be easily used in the terminal.

quasarj created a django application based off of PasswordPusher

phanaster created a Coupon Pushing application based off of PasswordPusher

bemosior put together a PHP port of PasswordPusher: PHPasswordPusher