Skip to content
This repository has been archived by the owner on Jun 5, 2023. It is now read-only.

ankane/heroku2dokku

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 heroku2dokku

How to Use

In your app directory, run:

git remote add dokku dokku@dokkuhost:myapp
heroku2dokku all

This:

  1. creates app
  2. copies config
  3. copies custom domains
  4. 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 master

Database

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.dump

And 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:

To get started with development:

git clone https://github.com/ankane/heroku2dokku.git
cd heroku2dokku
bundle install
bundle exec rake test

About

Heroku -> Dokku in minutes

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages