Skip to content

Instantly share code, notes, and snippets.

@ultimate010
Created August 3, 2015 11:00
Show Gist options
  • Save ultimate010/842f1eac6c31cadb9604 to your computer and use it in GitHub Desktop.
Save ultimate010/842f1eac6c31cadb9604 to your computer and use it in GitHub Desktop.
init-server.sh
# Install usefull software
sudo yum install -y aws-cli gcc git emacs vim tmux screen htop iotop iptraf curl
# Install lib for build python
sudo yum install -y openssl openssl-devel zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel patch
# Change sysctl
sudo sed -i 's/fs.file-max.*//' /etc/sysctl.conf
sudo sh -c 'echo "fs.file-max = 65535" >> /etc/sysctl.conf'
sudo sed -i 's/net.core.somaxconn.*//' /etc/sysctl.conf
sudo sh -c 'echo "net.core.somaxconn = 8192" >> /etc/sysctl.conf'
# Change open file limit
sudo sed -i 's/\* soft nofile.*//' /etc/security/limits.conf
sudo sh -c 'echo "* soft nofile 65536" >> /etc/security/limits.conf'
sudo sed -i 's/\* hard nofile.*//' /etc/security/limits.conf
sudo sh -c 'echo "* hard nofile 65536" >> /etc/security/limits.conf'
# Install virtualenv
# Already installed in python27-virtualenv
# Install pyenv
rm -rf ~/.pyenv
curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
source ~/.bash_profile
# Update pyenv
pyenv update
# Install nginx repo
# No nginx 1.4.7 in yum repo
# echo -e '[nginx]\nname=nginx repo\nbaseurl=http://nginx.org/packages/centos/6/$basearch/\npriority=1\ngpgcheck=0\nenabled=1' | sudo tee /etc/yum.repos.d/nginx.repo
# sudo yum makecache
sudo cp ./nginx /etc/init.d/nginx && sudo chmod +x /etc/init.d/nginx
curl 'http://nginx.org/download/nginx-1.4.7.tar.gz' -o /tmp/nginx-1.4.7.tar.gz
cd /tmp && tar zxvf /tmp/nginx-1.4.7.tar.gz
# Install dependency
sudo yum install -y pcre pcre-devel libxslt libxslt-devel gd gd-devel perl-devel perl-ExtUtils-Embed geoip geoip-devel gperftools gperftools-devel
cd /tmp/nginx-1.4.7 && ./configure --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/var/run/nginx.pid --lock-path=/var/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-ipv6 --with-http_ssl_module --with-http_spdy_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module --with-http_image_filter_module --with-http_geoip_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_stub_status_module --with-http_perl_module --with-mail --with-mail_ssl_module --with-pcre --with-google_perftools_module --with-debug --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' --with-ld-opt=' -Wl,-E' && make && sudo make install
sudo adduser --system --no-create-home --user-group -s /sbin/nologin nginx
sudo chkconfig nginx on
# Install uwsgi 1.2.3
sudo pip install --allow-external uwsgi --allow-unverified uwsgi uwsgi==1.2.3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment