heroku2dokku
Heroku -> Dokku in minutes
Installation
You should already have Dokku set up on a server - see this guide for instructions for DigitalOcean
Install the official Dokku client
git clone git@github.com:progrium/dokku.git ~/.dokku
# add the following to either your
# .bashrc, .bash_profile, or .profile file
alias dokku='$HOME/.dokku/contrib/dokku_client.sh'And run:
gem install heroku2dokkuHow to Use
In your app directory, run:
git remote add dokku dokku@dokkuhost:myapp
heroku2dokku allThis:
- creates app
- copies config
- copies custom domains
- adds a CHECKS file for zero-downtime deploys
Commit the CHECKS file and deploy away!
git add CHECKS
git commit -m "Added checks"
git push dokku masterDatabase
To transfer your database, export your data
heroku maintenance:on
heroku pg:backups capture
curl -o latest.dump `heroku pg:backups public-url`Import to a new database
pg_restore --verbose --clean --no-acl --no-owner -h localhost -U myuser -d mydb latest.dumpAnd update your config
dokku config:set DATABASE_URL=postgres://...
Contributing
Everyone is encouraged to help improve this project. Here are a few ways you can help:
- Report bugs
- Fix bugs and submit pull requests
- Write, clarify, or fix documentation
- Suggest or add new features
To get started with development:
git clone https://github.com/ankane/heroku2dokku.git
cd heroku2dokku
bundle install
bundle exec rake test