• ubuntu搭建nodejs生产环境——快速部署手册


    为什么不用CentOS而用Ubuntu作为生产环境的运行平台?这个我也比较好奇,公司订的只能沿用传统,从使用成本的角度来说,此举也是值得肯定的。

    测试环境

    腾讯云 Ubuntu 16.04
    阿里云 Ubuntu 16.04

    开启Root账号ssh登录

    **1.修改配置文件 **
    使用命令:sudo vi /etc/ssh/sshd_config打开文件,找到配置:

    PermitRootLogin prohibit-password  
    

    修改成:

    PermitRootLogin yes  
    

    2.重启ssh

    sudo service ssh restart  
    

    3.修改root密码

    sudo passwd root 
    

    安装nodejs环境

    1.下载node压缩文件

    版本浏览地址:https://nodejs.org/dist/ 用户根据自己的需求下载相应的版本,我使用的是node-v5.12.0-linux-x64.tar.gz.

    2.解压

    tar -xvf node-v5.12.0-linux-x64.tar.gz
    

    3.查看版本

    cd /node-v5.12.0-linux-x64/bin
    
    ./node -v
    
    ./npm -v
    

    4.设置为全局

    sudo ln /node-v5.12.0-linux-x64/bin/node /usr/local/bin/node
    sudo ln /node-v5.12.0-linux-x64/bin/npm /usr/local/bin/npm
    

    nodejs提高班

    1.设置npm下载源为淘宝源,加速下载

    你可以使用我们定制的 cnpm (gzip 压缩支持) 命令行工具代替默认的 npm:

    npm install -g cnpm --registry=https://registry.npm.taobao.org

    更多详情,访问地址:http://npm.taobao.org/

    2.使用pm2 部署、守护、监控nodejs程序

    安装pm2:

    npm i pm2 -g 或 cnpm i pm2 -g

    pm2常用命令:

    $ pm2 start app.js              # 启动app.js应用程序
    
    $ pm2 start app.js -i 4         # cluster mode 模式启动4个app.js的应用实例     # 4个应用程序会自动进行负载均衡
    
    $ pm2 start app.js --name="api" # 启动应用程序并命名为 "api"
    
    $ pm2 start app.js --watch      # 当文件变化时自动重启应用
    
    $ pm2 start script.sh           # 启动 bash 脚本
    
    $ pm2 list                      # 列表 PM2 启动的所有的应用程序
    
    $ pm2 monit                     # 显示每个应用程序的CPU和内存占用情况
    
    $ pm2 show [app-name]           # 显示应用程序的所有信息
    
    $ pm2 logs                      # 显示所有应用程序的日志
    
    $ pm2 logs [app-name]           # 显示指定应用程序的日志
    
    $ pm2 stop all                  # 停止所有的应用程序
    
    $ pm2 stop 0                    # 停止 id为 0的指定应用程序
    
    $ pm2 restart all               # 重启所有应用
    
    $ pm2 reload all                # 重启 cluster mode下的所有应用
    
    $ pm2 gracefulReload all        # Graceful reload all apps in cluster mode
    
    $ pm2 delete all                # 关闭并删除所有应用
    
    $ pm2 delete 0                  # 删除指定应用 id 0
    
    $ pm2 scale api 10              # 把名字叫api的应用扩展到10个实例
    
    $ pm2 reset [app-name]          # 重置重启数量
    
    $ pm2 startup                   # 创建开机自启动命令
    
    $ pm2 save                      # 保存当前应用列表
    
    $ pm2 resurrect                 # 重新加载保存的应用列表
    

    安装nginx

    1.安装nginx

    apt-get update

    apt-get install nginx

    2.目录说明:

    配置文件:/etc/nginx/
    主程序文件:/usr/sbin/nginx
    Web默认目录:/usr/share/nginx/http/
    日志目录:/var/log/nginx/
    

    3.nginx常用命令

    service nginx start #启动

    service nginx stop #停止

    ps -ef | grep nginx #查看nginx进程

    4.nginx权限设置

    使用源安装之后,默认会使用nobody用户权限启动nginx,会导致一个问题,就是有静态文件压缩,并且文件比较大的情况,会导致浏览器访问出错,所以需要设置nginx的权限。

    修改权限:

    sudo vi /etc/nginx/nginx.conf

    找到user nobody,修改为 user root;

    重启nginx完成.

  • 相关阅读:
    命保住了!五年时间,我们也搞了一个技术中台(转)
    为什么要前后端分离?有什么优缺点?(转)
    Java WebService _CXF、Xfire、AXIS2、AXIS1_四种发布方式(优缺点对比)
    Java WebService _CXF、Xfire、AXIS2、AXIS1_四种发布方式(使用整理)
    Java WebService(实战) 简单实例
    Intellij IDEA svn的使用记录
    IDEA SonarLint安装及使用
    Java开发中的23种设计模式详解(收藏-转)
    Java中的static关键字解析
    触发器_实现ORACEL自动增长字段
  • 原文地址:https://www.cnblogs.com/vipstone/p/9152344.html
Copyright © 2020-2023  润新知