For ubuntu (16.04.1 LTS)
- Add user
useradd -s /bin/bash -m deploy
passwd -l deploy
- Upload your id_rsa.pub
scp ~/.ssh/id_rsa.pub [email protected]:/tmp
- Ssh no-password login
su - deploy
mkdir ~/.ssh
chmod 700 ~/.ssh
cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys
- set no-password sudo
EDITOR=vim visudo
and add line:
deploy ALL=(ALL) NOPASSWD: ALL
- install rbenv
sudo apt-get install -y git build-essential make libssl-dev libreadline-dev
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
git clone https://github.com/rbenv/rbenv-vars.git ~/.rbenv/plugins/rbenv-vars
- Modify your ~/.zshrc file instead of ~/.bash_profile
echo 'export PATH=$HOME/.rbenv/bin:$PATH' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
- ruby(need re-login)
rbenv install 2.3.3
rbenv local 2.3.3
gem install bundler
bundle config github.https true
- Upload
scp vendor/assets/images/logo/spree_50.png .rbenv-vars config/database.yml [email protected]:/tmp
- robots.txt
echo "Sitemap: https://www.chang-me.com/sitemap.xml.gz" >> public/robots.txt
- Create database
psql -U postgres
CREATE DATABASE db-name WITH ENCODING = 'UTF8';
CREATE USER user-name WITH PASSWORD 'change-me';
GRANT ALL PRIVILEGES ON DATABASE db-name TO user-name;
- Run
bundle exec cap production deploy
bundle exec cap production puma:nginx_config
- Seed
bundle exec rake db:seed
echo "fs.inotify.max_user_watches = 524288" > /etc/sysctl.d/idea.conf
sysctl -p --system
- 'Peer authentication failed for user', open file "/etc/postgresql/9.5/main/pg_hba.conf" change line:
local all all peer
to:
local all all md5
- Generate openssl certs
openssl genrsa -out www.change-me.com.key 2048
openssl req -new -x509 -key www.change-me.com.key -out www.change-me.com.crt -days 3650 # Common Name:*.change-me.com