Installation nearly installs on Centos 6.5 with Apache/Phusion

AI-generated summary

printec attempted a clean install of Discourse on Centos 6.5 with Apache/Phusion, but encountered an error indicating that a gem (rake-10.1.1) could not be found. The issue seems to be related to a missing GEM_PATH. Despite being close to a successful installation, printec is seeking guidance on how to resolve this issue.

codinghorror responded that official support is currently only available for the Docker install. However, riking pointed out that Docker appears to be available on CentOS 6, which may provide an alternative solution for printec.

I did a clean install on Centos 6.5 64 bit with following shell commands ran as root:

$ ./printec-basic-setup.sh
$ ./discourse-install.sh

Rather than flood this post with bash commands I have uploaded my script contents to media fire (see below).

When I point browser to the webpage I get this error:

It looks like Bundler could not find a gem. This is probably because your
application is being run under a different environment than it's supposed to.
Please check the following:

 * Is this app supposed to be run as the `discourse` user?
 * Is this app being run on the correct Ruby interpreter? Below you will
   see which Ruby interpreter Phusion Passenger attempted to use.
 * Are you using RVM? Please check whether the correct gemset is being used.
 * If all of the above fails, try resetting your RVM gemsets:
   https://github.com/phusion/passenger/wiki/Resetting-RVM-gemsets

-------- The exception is as follows: -------
Could not find rake-10.1.1 in any of the sources (Bundler::GemNotFound)
  /usr/local/rvm/gems/ruby-2.0.0-p353/gems/bundler-1.5.2/lib/bundler/spec_set.rb:92:in `materialize'
  /usr/local/rvm/gems/ruby-2.0.0-p353/gems/bundler-1.5.2/lib/bundler/spec_set.rb:85:in `map!'
  /usr/local/rvm/gems/ruby-2.0.0-p353/gems/bundler-1.5.2/lib/bundler/spec_set.rb:85:in `materialize'
  /usr/local/rvm/gems/ruby-2.0.0-p353/gems/bundler-1.5.2/lib/bundler/definition.rb:133:in `specs'
  /usr/local/rvm/gems/ruby-2.0.0-p353/gems/bundler-1.5.2/lib/bundler/definition.rb:178:in `specs_for'
  /usr/local/rvm/gems/ruby-2.0.0-p353/gems/bundler-1.5.2/lib/bundler/definition.rb:167:in `requested_specs'
  /usr/local/rvm/gems/ruby-2.0.0-p353/gems/bundler-1.5.2/lib/bundler/environment.rb:18:in `requested_specs'
  /usr/local/rvm/gems/ruby-2.0.0-p353/gems/bundler-1.5.2/lib/bundler/runtime.rb:13:in `setup'
  /usr/local/rvm/gems/ruby-2.0.0-p353/gems/bundler-1.5.2/lib/bundler.rb:119:in `setup'
  /usr/local/rvm/gems/ruby-2.0.0-p353/gems/bundler-1.5.2/lib/bundler/setup.rb:17
  /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
  /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'
  /opt/passenger/passenger-4.0.29/lib/phusion_passenger/loader_shared_helpers.rb:219:in `run_load_path_setup_code'
  /opt/passenger/passenger-4.0.29/lib/phusion_passenger/loader_shared_helpers.rb:333:in `running_bundler'
  /opt/passenger/passenger-4.0.29/lib/phusion_passenger/loader_shared_helpers.rb:217:in `run_load_path_setup_code'
  /opt/passenger/passenger-4.0.29/helper-scripts/rack-preloader.rb:96:in `preload_app'
  /opt/passenger/passenger-4.0.29/helper-scripts/rack-preloader.rb:153
Application root
/home/discourse/discourse
Environment (value of RAILS_ENV, RACK_ENV, WSGI_ENV and PASSENGER_ENV)
production
Ruby interpreter command
/usr/bin/ruby
User and groups
uid=501(discourse) gid=502(discourse) groups=502(discourse),501(rvm) context=unconfined_u:system_r:httpd_t:s0
Environment variables
rvm_bin_path = /usr/local/rvm/bin
HOSTNAME = localhost.localdomain
GEM_HOME = /home/discourse/discourse/vendor/bundle/ruby/1.8
SHELL = /bin/bash
TERM = xterm
HISTSIZE = 1000
IRBRC = /usr/local/rvm/rubies/ruby-2.0.0-p353/.irbrc
QTDIR = /usr/lib64/qt-3.3
PASSENGER_DEBUG_DIR = /tmp/passenger.spawn-debug.XXXXxDUAYF
MY_RUBY_HOME = /usr/local/rvm/rubies/ruby-2.0.0-p353
QTINC = /usr/lib64/qt-3.3/include
USER = discourse
_system_type = Linux
rvm_path = /usr/local/rvm
rvm_prefix = /usr/local
MAIL = /var/spool/mail/discourse
PATH = /usr/local/rvm/gems/ruby-2.0.0-p353/bin:/usr/local/rvm/gems/ruby-2.0.0-p353@global/bin:/usr/local/rvm/rubies/ruby-2.0.0-p353/bin:/usr/lib64/qt-3.3/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/sbin:/usr/local/rvm/bin:/home/discourse/bin
PWD = /home/discourse/discourse
KDE_IS_PRELINKED = 1
LANG = C
KDEDIRS = /usr
_system_arch = x86_64
_system_version = 6
SSH_ASKPASS = /usr/libexec/openssh/gnome-ssh-askpass
HISTCONTROL = ignoredups
rvm_version = 1.25.15 (stable)
HOME = /home/discourse
SHLVL = 2
LOGNAME = discourse
QTLIB = /usr/lib64/qt-3.3/lib
CVS_RSH = ssh
GEM_PATH = 
LESSOPEN = |/usr/bin/lesspipe.sh %s
_system_name = CentOS
G_BROKEN_FILENAMES = 1
IN_PASSENGER = 1
PYTHONUNBUFFERED = 1
NODE_PATH = /opt/passenger/passenger-4.0.29/node_lib
RAILS_ENV = production
RACK_ENV = production
WSGI_ENV = production
NODE_ENV = production
PASSENGER_APP_ENV = production
SERVER_PROTOCOL = HTTP/1.1
SERVER_SOFTWARE = Apache/2.2.15 (CentOS)
DOCUMENT_ROOT = /home/discourse/discourse/public
SERVER_ADMIN = root@localhost
QUERY_STRING = 
SERVER_NAME = 192.168.1.65
REMOTE_PORT = 50724
REMOTE_ADDR = 192.168.1.78
SERVER_PORT = 80
REQUEST_METHOD = GET
SERVER_ADDR = 192.168.1.65
REQUEST_URI = /
_ORIGINAL_GEM_PATH = /usr/local/rvm/gems/ruby-2.0.0-p353:/usr/local/rvm/gems/ruby-2.0.0-p353@global

I am really close. The problem seems to be a missing GEM_PATH. Does anyone know how to set that from Apache/Phusion?

For those who are interested my install scripts can be downloaded here in zip format.

(Pity I can’t attach them to a post here but the forum doesn’t allow zip file types.)

Anyone know how to get to the next step?

Thanks in advance

Regards
Glenn @ Printec
www.printec.co.nz

Sorry, we only support our official Docker install at this time. Does that work for you?

Docker appears to be available in CentOS 6.