Last active
January 2, 2016 04:38
-
-
Save nakamura-akifumi/8251359 to your computer and use it in GitHub Desktop.
enju trunk 環境構築用 provisioning script その1(ミドルウェア構築部)
This file contains 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
echo "start script" | |
#RUBY_VERSION=1.9.3-p484 | |
#RUBY_VERSION=2.0.0-p481 | |
RUBY_VERSION=2.1.2 | |
PGDATA=/var/lib/pgsql/9.3/data | |
PGLOG=/var/lib/pgsql/9.3/pgstartup.log | |
echo "Ruby version ${RUBY_VERSION}" | |
echo "step1: install devtools" | |
yum update -y | |
yum install -y w3m poppler-utils ImageMagick ImageMagick-devel memcached \ | |
git gcc-c++ libxslt-devel curl-devel \ | |
readline-devel libffi-devel java-1.7.0-openjdk java-1.7.0-openjdk-devel \ | |
openssl-devel mlocate patch ctags-etags unzip \ | |
mlocate patch ctags-etags fail2ban logwatch libpcap-devel libcap-ng-devel \ | |
system-config-firewall-tui sqlite-devel libmemcached \ | |
openldap-clients | |
rpm -ivh http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-centos93-9.3-1.noarch.rpm | |
yum install -y postgresql93 postgresql93-server postgresql93-contrib postgresql93-libs postgresql93-devel | |
#service postgresql-9.3 initdb --encoding=UTF8 --no-locale --auth-local=trust | |
cat << 'EOL' >> /etc/profile | |
#postgresql | |
export PGDATA=/var/lib/pgsql/9.3/data | |
export PATH="/usr/pgsql-9.3/bin:$PATH" | |
#java | |
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64 | |
#export ENJU_CUSTOMER_PREFIX="customer" | |
#export RAILS_ENV=production | |
#export ENJU_LOGIN_LINK_HIDDEN=hidden | |
EOL | |
source /etc/profile | |
mkdir -p ${PGDATA} | |
chown -R postgres:postgres /var/lib/pgsql/9.3 | |
su -l postgres -c "initdb --pgdata='$PGDATA' --auth='ident' --encoding=UTF8 --no-locale --auth-local=trust --auth-host=trust" >> "$PGLOG" 2>&1 < /dev/null | |
chkconfig postgresql-9.3 on | |
service postgresql-9.3 start | |
chkconfig memcached on | |
service memcached start | |
rm -f /etc/localtime | |
cp -p /usr/share/zoneinfo/Japan /etc/localtime | |
date | |
chkconfig iptables off | |
echo "step1.2 : check env and set user env" | |
vagrant_env=`cut -d: -f1 /etc/passwd | grep vagrant` | |
if [ -n "$vagrant_env" ] | |
then | |
echo "vagrant env." | |
execute_user_name="vagrant" | |
solr_dest_dir="/home/vagrant/src" | |
else | |
echo "not vagrant" | |
execute_user_name="enju" | |
echo "create user : ${execute_user_name}" | |
useradd -U -G wheel ${execute_user_name} | |
solr_dest_dir="/home/enju/src" | |
fi | |
chmod +w /etc/sudoers | |
cat << 'EOL' >> /etc/sudoers | |
Defaults exempt_group="${execute_user_name}" | |
Defaults env_keep += "PATH" | |
EOL | |
echo "step2 : install rbenv and ruby-build" | |
rbenv_bin=/usr/local/rbenv/bin/rbenv | |
if [ -e $rbenv_bin ]; then | |
echo "exist rbenv : skip." | |
else | |
cd /usr/local | |
git clone git://github.com/sstephenson/rbenv.git rbenv | |
mkdir rbenv/shims rbenv/versions | |
groupadd rbenv | |
chgrp -R rbenv rbenv | |
chmod -R g+rwxXs rbenv | |
cat << 'EOL' >> /etc/profile | |
# rbenv | |
export RBENV_ROOT=/usr/local/rbenv | |
export PATH="/usr/local/rbenv/bin:$PATH" | |
eval "$(rbenv init -)" | |
EOL | |
source /etc/profile | |
fi | |
mkdir /usr/local/rbenv/plugins | |
cd /usr/local/rbenv/plugins | |
git clone git://github.com/sstephenson/ruby-build.git | |
chgrp -R rbenv ruby-build | |
chmod -R g+rwxs ruby-build | |
echo "step3 : setup ruby" | |
rbenv install ${RUBY_VERSION} | |
#curl http://patches.com/ruby.patch | rbenv install -p ${RUBY_VERSION} | |
rbenv global ${RUBY_VERSION} | |
rbenv rehash | |
gem install rbenv-rehash --no-ri --no-rdoc | |
rbenv rehash | |
gem install bundler --no-ri --no-rdoc | |
gem install rake --no-ri --no-rdoc --force | |
gem install whenever --no-ri --no-rdoc --force | |
gem install pry --no-ri --no-rdoc --force | |
echo "step4 : download solr-3.6.2" | |
mkdir -p ${solr_dest_dir} | |
solrfile="${solr_dest_dir}/apache-solr-3.6.2.tgz" | |
if [ -e $solrfile ]; then | |
echo "exist ${solrfile} : skip download" | |
else | |
cd ${solr_dest_dir} | |
curl -o apache-solr-3.6.2.tgz http://www5163ug.sakura.ne.jp:8893/apache-solr-3.6.2.tgz | |
tar zxvf apache-solr-3.6.2.tgz | |
fi | |
if [ -n "$vagrant_env" ] | |
then | |
echo "vagrant env: NOP" | |
else | |
echo "not vagrant: chown" | |
chown -R enju.enju /home/enju | |
fi | |
echo "step5 : setup postgresql user" | |
su - postgres -c "createuser -dRS enju" |
vimrc修正
vimを別のファイルに移動
rubyのバージョンを2.1.2に変更
さくらのVPSに対応。
gem whenever を追加。
gem install pry を追加。
ENJU_LOGIN_LINK_HIDDEN=hidden を追加。
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
ruby のバージョンを 2.0.0 p451 から 2.0.0 p481 に変更。