怎么用shell脚本实现服务器快速设置

  介绍

本篇内容介绍了“怎么用shell脚本实现服务器快速设置”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

通过<代码> 壳脚本实现服务器快速设置

现在企业出海已经是常态,我们面临更多的国家地区服务器安装的工作,虽然云服务已经普及,还有各种<代码> SaaS>

目前与那些快速部署方法?

<李>

服务器镜像——最快,但必须在同一个供应商内,出海可能会不同地区用不同的云服务商,就无法实现。

<李>

<代码>码头工人> <李>

<代码> 壳脚本——可以简化大多数复杂应用的安装,适合系统环境变化不大的情况,例如可以用同一个版本系统。

虽然<代码> 壳脚本的方式不如<代码>码头工人> 安装包也提供了类似的一键安装脚本。

在上脚本之前,先要说明一下我的服务器软件内容:

<李>

<代码> gitlab-runner> <李>

<代码> nodeJS 环境

<李>

<代码> nodeJS> gitlab-runner> <李>

使用<代码> nvm 管理<代码> nodeJS> <李>

使用<代码> pm2 管理进程

下面是以我在游戏出海时使用的<代码> 壳脚本,简单说明如何通过<代码> 壳脚本快速部署:

# !/bin/sh  #第一句,基本是所有sh脚本的标准开的头   7.8 #,Centos ,, #说明这个脚本适用的系统和版本,给人看的      #硬盘目录:#变量声明   DISK_PATH=?data", #之前已经好山的硬盘路径   #主机名:   主机名=癿y_server_name", #服务器名字,方便登录后区分   # gitlab-runner:   GITLAB_RUNNER=癶ttps://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh"   # nodejs 版本   NODE_VERSION=皏8.17.0"      # NVM  # nvm安装脚本   NVM_SCRIPT=癶ttps://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh"   # PM2  # pm2版本   PM2=皃m2"   # pm2  data 路径:# pm2日志路径,我们不希望放到系统盘中   PM2_DATA_DIR=皃m2Data", #,下方会组合成完整的路径,DISK_PATH +/PM2_DATA_DIR      echo “开始安装SDK 通道套件============?      if  [, -n “HOSTNAME"美元;,),#,如果的使用方式,大家需要去了解一下,n是如果不为空的意思   然后   echo 才能“修改主机名称为:HOSTNAME"美元;   hostnamectl 才能;set-hostname “HOSTNAME"美元;   其他的   echo 才能“可以使用,& # 39;hostnamectl  set-hostname  newHostname& # 39;, #设置当前主机名、立即生效,重启也生效,   fi   echo “准备开始,当前主机名:“,   主机名      #,下面是一连串的安装和处理了      echo “基础准备:“   yum  install  epel-release  - y   yum  update  - y      echo “安装,htop:“   yum  install  htop  - y      echo “安装,ngnix:“   rpm  -ivh  http://nginx.org/packages/centos/7/noarch/rpms/nginx -释放- centos - 7 - 0. el7.ngx.noarch.rpm   yum  install  nginx  - y   systemctl  enable  nginx   systemctl  start  nginx   touch “/etc/nginx conf.d/virtual.conf"      echo “安装gitlab-runner:“;   #,For  RHEL/CentOS/Fedora   curl  -L “GITLAB_RUNNER"美元,|,sudo  bash   yum  install  gitlab-runner  - y   echo “alias  lg=& # 39; su  -l  gitlab-runner& # 39;“,在祝辞,“$ HOME/.bashrc"   source “$ HOME/.bashrc"      echo “建立pm2Data目录:“   PM2_FINALDIR=癉ISK_PATH/PM2_DATA_DIR"美元;   if [!大敌;-d “PM2_FINALDIR"美元;,];,then  # - d是判断是不是目录,不是就创建   mkdir 才能“PM2_FINALDIR"美元;   fi   chown  gitlab-runner: gitlab-runner “PM2_FINALDIR"美元;,#修改目录所有者      #,我会生成一个新的脚本到gitlab-runner目录,为什么这样做呢?   #,因为需要在gitlab-ruuner用户跑服务,希望环境在目标用户那里。   #,另外的原因是,以其他用户身份安装pm2会出现问题,那我就跑2次脚本咯      echo “切换用户安装,node 套件“;   # # # # # # # #,nodejs.sh 开始# # # # # # # #   NODE_SHELL=& # 39;/home/gitlab-runner nodejs.sh& # 39;      echo “# !/bin/sh   7.8 #,Centos       #硬盘目录:   # nodejs 版本   NODE_VERSION=\“NODE_VERSION \“美元;   PM2_FINALDIR=\“PM2_FINALDIR \“美元;      # NVM   NVM_SCRIPT=\“NVM_SCRIPT \“美元;   # PM2   PM2=\“PM2 \“美元;      echo  \“安装,nvm \“;   curl  - o安康;NVM_SCRIPT 美元;| bash   echo  \“安装,node  $ NODE_VERSION: \“;   source  \“\ $ HOME/. bashrc \“;   nvm  install  NODE_VERSION美元   nvm  use  NODE_VERSION美元   echo  \“安装pm2:, pm2 \“美元;,,   npm 小姐:$ PM2  - g   npm  install ——global  coffeescript   npm  install ——global 饮而尽      #,pm2 目录的骚操作   PM2_HOME=\“\ $ HOME/.pm2 \“;   if  [, -d  PM2_HOME 美元\],然后   echo 才能;& # 39;处理.pm2目录& # 39;   ,pwd   ,噢   mv 才能;\ PM2_HOME 美元;PM2_FINALDIR美元   rm 才能;\ PM2_HOME 美元;- r   ln 才能;-s  PM2_FINALDIR美元/\ PM2_HOME美元   else    echo 才能;-e  & # 39; .pm2 目录不存在& # 39;   ln 才能;-s  PM2_FINALDIR美元/\ PM2_HOME美元   fi   source  \“\ $ HOME/. bashrc \“;   echo  \“NodeJS 套件结束\““,祝辞,“NODE_SHELL"美元;      chown  gitlab-runner: gitlab-runner “NODE_SHELL"美元;   chmod  + x “NODE_SHELL"美元,#,让脚本可以运行   null   null   null   null   null   null   null   null   null

怎么用shell脚本实现服务器快速设置