This guide setup Apache2/Passenger/Ruby/Rails on a CentOS.
You can test it yourself using VirtualBox to run all the scripts - read VirtualBox.md for more info.
# install the necessary libraries
yum update
yum install curl-devel git sqlite-devel
yum install nodejs
# install RVM
curl -L https://get.rvm.io | bash -s stable
# runs RVM
source /etc/profile.d/rvm.sh
# Setups required files for RVM
rvm requirements --autolibs=enable
# Install Ruby
rvm install 2.0.0
# Config RVM to use ruby 2.0.0
rvm use 2.0.0
rvm --default 2.0.0
# Install bundler
gem install bundler
# Install Rails gem
gem install rails --version 4.0.0 --no-ri --no-rdoc
# You can verify rails successful installation
rails -v
# Install Apache
yum install httpd httpd-devel
# Allow port 80 to server webpage
iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
# starts the service
chkconfig httpd on # sets httpd to run on startup
service httpd start
# find out your server IP
ifconfig eth0 | grep inet | awk '{ print $2 }'
# You can check if your apache is running by viewing http://localhost:8888 on your browser
# Install passenger
# There will be more requirements to install
# Just follow the instructions
gem install passenger --version 4.0.8
passenger-install-apache2-module
# There will be instructions to load your passenger module via http conf
# Put the code in a new file at /etc/httpd/conf.d/passenger.conf
# Restart the service
service httpd restart
# If there are error loading passenger
passenger-config --root
chcon -R -h -t httpd_sys_content_t /path-to-passenger-root
# Install postgres
yum install postgres postgres-server postgres-contrib
service postgresql initdb
service postgresql start# see httpd error log
cat /var/log/httpd/error_log
# Error with yum update
yum clean all
yum check-update