Centos7 部署Web应用

907 阅读3分钟

说明

此文章以aliyun、Centos7系统为前提部署Web相关应用。文中涉及修改、添加文件,可用Linux命令或FTP上传到服务器,可自行选择。

设置安全组

  • 因为涉及到发布多个应用,使用不同端口访问,需要在aliyun后台添加安全组
  • 为了方便,这里直接开放所有端口,创建安全组(也可创建多个安全组或开放个别端口):

  • 创建完成后,直接将实例加入到安全组即可

cmd 进入服务器

  • ssh root@xx.xxx.xx.xx
  • 输入密码: xxxxxx

安装git

  • 安装git:sudo yum install git -y
  • 确认安装成功: git --version
  • 配置用户名:git config --global user.name "xxxx"
  • 配置邮箱地址:git config --global user.email "xxxx@xxx.com"
  • 生成SSH keys/root/.ssh/路径下:ssh-keygen -t rsa -C "xxxx@xxx.com"
  • SSH keys添加到Github:vi /root/.ssh/id_rsa.pub

安装Nginx

  • 安装:sudo yum install nginx -y
  • 启动:sudo systemctl start nginx
  • 访问公网IP:浏览器访问云服务器公网IP地址xx.xxx.xxx.xx(未修改nginx配置),成功则显示:

  • 修改nginx,配置不同端口,访问多个静态项目: vi /etc/nginx/nginx.conf/etc/nginx/conf/nginx.conf (版本不同文件路径稍微差距)
  • server下的root修改为其它目录 /usr/www/home/dist (可根据个人习惯修改路径)
  • 添加多个server用不同端口访问多个项目
  • 修改完成后上传自己的代码到相关目录下,默认入口为index.html,更新配置后执行nginx -s reload 重启Nginx(也可以先关闭再执行启动命令);Nginx常用命令:
    1. 检查配置文件是否有语法错误 nginx -t
    2. 快速停止或关闭Nginx:nginx -s stop
    3. 正常停止或关闭Nginx:nginx -s quit
    4. 重启Nginx:nginx -s reload

安装Nodejs

  • 下载nodejs安装包: wget https://nodejs.org/dist/v10.13.0/node-v10.13.0-linux-x64.tar.xz (下载地址和版本可去官网选择后复制修改)
  • 解压:tar xf node-v10.13.0-linux-x64.tar.gz
  • 更改nodejs包位置: mv node-v10.13.0-linux-x64 /usr/local/src/
  • 创建软链接全局使用node命令:
  • ln -s /usr/local/src/node-v10.13.0-linux-x64/bin/node /usr/bin/node
  • ln -s /usr/local/src/node-v10.13.0-linux-x64/bin/npm /usr/bin/npm
  • 测试: node -v npm -v

上面的/usr/local/src/可以更改 ,如有更改上面的路径都需要统一

/usr/local/src 下的node包不能删除,否则node命令会失效

安装pm2 (node进程管理,可启动多个Node或SSR应用并进行管理)

  • 下载pm2:npm install pm2 -g
  • 创建软链接全局使用pm2命令:ln -s /usr/local/src/node-v10.13.0-linux-x64/lib/node_modules/pm2/bin/pm2 /usr/local/bin/pm2
  • 启动 app.js 应用程序:pm2 start app.js
  • 测试:pm2 list
  • 下图为启动成功,这里没有做nginx配置,可直接用公网IP + app.js程序端口号访问项目,如: xx.xxx.xxx.xx:3000

  • pm2常用命令:
    1. 重启: pm2 restart app.js
    2. 停止: pm2 stop app_name|app_id
    3. 删除:pm2 delete app_name|app_id
    4. 停止所有应用:pm2 stop all
    5. 查看进程状态: pm2 list
    6. 更多接口:https://pm2.keymetrics.io/docs/usage/pm2-api/

app.js 是的nodejs、Koa、Express 或者 SSR 应用的入口

注意:这里创建pm2的软链接地址和node的路径是不一样的,下载完成后命令行中会有路径提示

安装mongodb

  • 下载:wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.13.tgz
  • 解压:tar zxvf mongodb-linux-x86_64-4.0.13.tgz
  • 移动文件位置:mv mongodb-linux-x86_64-4.0.13 /usr/local/mongodb/
  • 进入文件夹:cd /usr/local/mongodb
  • 创建数据库存放目录:mkdir data
  • 创建日志文件: touch logs
  • /usr/local/mongodb/bin/下执行:./mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --logappend --port=27017 --fork
  • /usr/local/mongodb/bin/ 执行命令: ./mongo
  • 测试: show dbs