Created
May 6, 2016 11:09
-
-
Save simsicon/4938773c27149e3cfbaeac04bf5c0137 to your computer and use it in GitHub Desktop.
A provisioning script for Rails webapp on Ubuntu 14.04 LTS
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
### Install Git and build deps | |
sudo apt-get update | |
sudo apt-get install software-properties-common tmux htop curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev libffi-dev tcl8.5 | |
sudo add-apt-repository ppa:git-core/ppa | |
sudo apt-get update | |
sudo apt-get install git | |
### Install rbenv and ruby | |
cd | |
git clone https://github.com/rbenv/rbenv.git ~/.rbenv | |
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc | |
echo 'eval "$(rbenv init -)"' >> ~/.bashrc | |
exec $SHELL | |
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build | |
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc | |
exec $SHELL | |
git clone https://github.com/rbenv/rbenv-gem-rehash.git ~/.rbenv/plugins/rbenv-gem-rehash | |
rbenv install 2.3.2 | |
rbenv global 2.3.1 | |
### For js runtime | |
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash - | |
sudo apt-get install -y nodejs | |
### For China | |
gem sources --remove https://rubygems.org/ | |
gem sources --add https://ruby.taobao.org/ | |
### Bundler | |
gem install bundler | |
rbenv rehash | |
### Postgres | |
sudo sh -c "echo 'deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main' > /etc/apt/sources.list.d/pgdg.list" | |
wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add - | |
sudo apt-get update | |
sudo apt-get install -y postgresql-common postgresql-9.5 libpq-dev | |
sudo -u postgres createuser $DBUSERNAME -s | |
# If you would like to set a password for the user, you can do the following | |
sudo -u postgres psql | |
postgres=# \password $DBUSERNAME | |
# TODO: to change your /etc/postgresql/9.5/main/pg_hba.conf from peer to md5 | |
### Passenger + Nginx | |
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 561F9B9CAC40B2F7 | |
sudo apt-get install -y apt-transport-https ca-certificates | |
sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger trusty main > /etc/apt/sources.list.d/passenger.list' | |
sudo apt-get update | |
sudo apt-get install -y nginx-extras passenger | |
### Redis | |
sudo add-apt-repository ppa:chris-lea/redis-server | |
sudo apt-get update | |
sudo apt-get install redis-server | |
redis-benchmark -q -n 1000 -c 10 -P 5 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment