# you can copy this file to /etc/init/discourse.conf and then start discourse with # initctl start discourse # It assumes Discourse is installed at /var/www/discourse # It assumes Discourse is running under the discourse user # It assumes an rvm based setup description "Unicorn upstart for discourse" stop on runlevel [06] setuid discourse setgid discourse respawn respawn limit 3 30 script exec /bin/bash <<'EOT' # set HOME to the setuid user's home, there doesn't seem to be a better, portable way export HOME="$(eval echo ~$(id -un))" export RAILS_ENV=production cd /var/www/discourse source "$HOME/.rvm/scripts/rvm" exec bundle exec unicorn -c config/unicorn.conf.rb EOT end script