| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
jope3014
9年前发布

Frigga自动安装脚本(linux5.8/6.5测试稳定)

#!/bin/bash    PATH="$PATH:/usr/local/bin:/usr/bin"  RUBY_VERSION="2.2.3"  RUBY_NAME="ruby-$RUBY_VERSION"  RUBY_FILE_TAR="$RUBY_NAME.tar.gz"  SOFT_DIR="/opt/soft"  INSTALL_DIR="/opt/ops/Frigga"  HTTP_CONF="conf/frigga.yml"  FRIGGA_CMD="/opt/ops/Frigga/bin/frigga.rb"  FRIGGA_BIN_DIR=`dirname $FRIGGA_CMD`    ADMIN="admin"  PASSWD="pswd"  PORT="5555"    REBOOT_RUN="/etc/rc.local"  ENV_FILE="/etc/profile"    # OS:  OS=`cat /etc/issue|head -1|awk '{print $3}'|cut -d'.' -f 1`    # Install gcc  yum -y install gcc gcc-c++ zlib git openssl openssl-devel    # Install ruby && gem  [ -d "$INSTALL_DIR" ] && rm -rf $INSTALL_DIR  mkdir -p $INSTALL_DIR  mkdir -p $SOFT_DIR  cd $SOFT_DIR  [ -f "$RUBY_FILE_TAR" ] && rm -f $RUBY_FILE_TAR  [ -d "$RUBY_NAME" ] && rm -rf $RUBY_NAME    which ruby > /dev/null 2>&1  if [ $? -eq 0 ]; then      yum -y remove ruby  fi    wget --no-check-certificate https://cache.ruby-lang.org/pub/ruby/2.2/$RUBY_FILE_TAR  tar -zxf $RUBY_FILE_TAR  cd $RUBY_NAME  ./configure  make  make install    ln -s /usr/local/bin/ruby /bin/ruby  ln -s /usr/local/bin/ruby /usr/bin/ruby  ln -s /usr/local/bin/gem /bin/gem    gem source -r https://rubygems.org/ -a https://ruby.taobao.org/  if [ $? != 0 ];then    echo "====Error:"    echo "gem source -r https://rubygems.org/ -a https://ruby.taobao.org/   FAIL!"    exit 1  fi  gem install bundle eventmachine  ln -s /usr/local/bin/bundle /bin/bundle  ln -s /usr/local/bin/thor /bin/thor    # Install Frigga && god  cd $INSTALL_DIR  which git > /dev/null 2>&1  if [ $? != 0 ];then      if [ $OS -eq 5 ]; then          cd /tmp          wget https://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm          rpm -ivh epel-release-5-4.noarch.rpm      fi      if [ $OS -eq 6 ]; then          cd /tmp          wget https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm          rpm -ivh epel-release-6-8.noarch.rpm      fi      yum -y install git  fi  which git > /dev/null 2>&1  [ $? != 0 ] && echo "git is not exist." && exit 1  cd $INSTALL_DIR  git clone https://github.com/xiaomi-sa/frigga.git $INSTALL_DIR  [ $? != 0 ] && echo "git Frigga FAIL." && exit 1    ln -s $FRIGGA_CMD /bin/frigga  mkdir gods  mkdir conf.d  chmod 777 log/    sed -i "s/admin/$ADMIN/;s/123/$PASSWD/;s/9001/$PORT/" $HTTP_CONF  #sed -i "s/^frigga_path/#&/g" $FRIGGA_CMD  #sed -i "s*#{frigga_path}*$FRIGGA_BIN_DIR*g" $FRIGGA_CMD  #sed -i "s*ruby*/bin/ruby*g" $FRIGGA_CMD    ruby ./script/run.rb start  ln -s /usr/local/bin/god /bin/god    # Reboot auto run  RUN_CONTENT="""  ## 第一次启动会失败,所以添加两次 Frigga:  /bin/ruby /opt/ops/Frigga/script/run.rb start >> /tmp/god_err.log 2>&1  /bin/ruby /opt/ops/Frigga/script/run.rb start >> /tmp/god_err.log 2>&1  """  echo "$RUN_CONTENT" >> $REBOOT_RUN    # Tomcat add config  # cp setenv.sh /tomcat/bin  # chown lbs:lbs /tomcat/bin/setenv.sh  # chmod +x /tomcat/bin/setenv.sh