HowTo Install Redmine (> 2.5.x) on Heroku¶
Ok, after months of try-and-fail I was finally able to do it.
As it's my first Rails application i had no idea of how to do it, so I looked for different tutorials. Finally here my own:
- http://railsguides.net/2012/04/28/how-to-deploy-redmine-to-heroku/
- http://tygertown.us/redmine-on-heroku/
Install Redmine¶
First i got the newest stable version of Redmine (2.5 at this time)
git clone https://github.com/redmine/redmine.git -b 2.5-stable
Edit: Navigate into your project with your terminal:
cd redmine
Then as everywhere, we have to remove those files from .gitignore
Gemfile.lock Gemfile.local public/plugin_assets config/initializers/session_store.rb config/initializers/secret_token.rb config/configuration.yml config/email.yml
As I always had problems with the database, I just removed this whole block from the Gemfile
database_file = File.join(File.dirname(__FILE__), "config/database.yml")
if File.exist?(database_file)
database_config = YAML::load(ERB.new(IO.read(database_file)).result)
...
else
warn("No adapter found in config/database.yml, please configure it first")
end
else
warn("Please configure your config/database.yml first")
end
and added instead just this to the Gemfile
group :production do
# gems specifically for Heroku go here
gem "pg", ">= 0.11.0"
end
Then finally install the gems. Don't get confused by log messages like "Please configure your config/database.yml first", heroku will do that for you
bundle install
Now get the secret token with
bundle exec rake generate_secret_token
Next, you create a app at heroku (we're supposing you are already registered at heroku and all that it brings with it)
heroku create NAME_FOR_YOUR_APPTo avoid aborting when deploying to heroku, we have to do the following two steps:
- In config/environment.rb we have to remove (or comment) line 10, where it says
exit 1
- In config/application.rb we have to add an additional line between line 13 and line 14 and add this: config.assets.initialize_on_precompile = false and it should look like this
... 12: module RedmineApp 13: class Application < Rails::Application 14: config.assets.initialize_on_precompile = false 15: # Settings in config/environments/* take precedence over those specified here. ...
Now we are finally ready to commit our changes
git add -A git commit -m “preparing for heroku” git push heroku 2.5-stable:master
Now just get the database ready and chose the default language, when you are asked
heroku run rake db:migrate heroku run rake redmine:load_default_data
There you go, open your redmine and log in with your credentials
heroku open
Your username is admin and your password is admin as well.
Configure E-Mail¶
First you have to add the Sendgrid add-on to heroku
heroku addons:add sendgrid:starter
This is just a free-200-mails-per-day version (-> see Add-On-Description )
Then you do create the following file for the email configurations: config/configuration.yml
In this file you only have the following content (adjust Username and Password to yours, you can find them at the add-on page when accessing through your heroku app)
production:
delivery_method: :smtp
smtp_settings:
address: "smtp.sendgrid.net"
port: 25
authentication: :plain
domain: "heroku.com"
user_name: "SENDGRID_USERNAME"
password: "SENDGRID_PASSWORD"
Once again, commit and push your changes
git add -A git commit -m “adding email configurations” git push heroku 2.5-stable:master
There you go, enjoy!
I know this is not the cleanest way at some steps, but it works and I hope to help others as well ;)
Updated by Sandro Kolly over 10 years ago · 1 revisions