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

测试环境

腾讯云 Ubuntu 16.04
阿里云 Ubuntu 16.04

开启Root账号ssh登录

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

LoginGraceTime 120
PermitRootLogin prohibit-password  

修改成:

LoginGraceTime 120
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完成.

ubuntu搭建nodejs生产环境——快速部署手册相关推荐

  1. Ubuntu下使用valet搭建laravel生产环境

    Ubuntu下使用valet搭建laravel生产环境 1.安装系统所需软件 更新软件列表 sudo apt update 2.更新软件 echo y | sudo apt upgrade 如果觉得时 ...

  2. linux pip3使用清华源_Linux实战016:Ubuntu搭建python开发环境

    我们在安装Ubuntu系统的时候会自带安装python2.7和python3.6版本的Python解释器,直接执行"ptyhon"默认运行的是python2.7,只有执行" ...

  3. Windows 11 上从零开始基于 wsl-ubuntu 搭建 AI 学习环境及部署多种私有 ChatGPT

    Windows 11 上从零开始基于 wsl-ubuntu 搭建 AI 学习环境及部署多种私有 ChatGPT 0. 背景和简介 1. 安装 wsl-ubuntu 2. (可选)配置清华大学软件源 3 ...

  4. 【转】在生产环境中部署前端代码

    在生产环境中部署前端代码 本文章前端代码是基于vue+webpack开发的 Nginx是一款轻量级的Web 服务器/反向代理服务器 首先,webpack配置如下 在开发过程中,我们是通过npm run ...

  5. 你知道怎么在生产环境下部署tomcat吗?

    享学课堂特邀作者:老顾 转载请声明出处! 一.前言 小伙伴们在网上看到的很多文章,都是对tomcat的一些介绍,什么配置啊,怎么启动.其实在生产环境中怎么部署,和网上介绍的有很大区别.这篇文章老顾就带 ...

  6. Win7搭建NodeJs开发环境以及HelloWorld展示—图解

    Windows 7系统下搭建NodeJs开发环境(NodeJs+WebStrom)以及Hello World!展示,大体思路如下:第一步:安装NodeJs运行环境.第二步:安装WebStrom开发工具 ...

  7. nodejs mac java home_Mac上搭建nodejs开发环境

    ###Mac上搭建nodejs开发环境 ####安装homebrew 1 2 3ruby -e "$(curl -fsSL https://raw.githubusercontent.com ...

  8. ubuntu vscode 配置字体_第五章 Ubuntu搭建ESP32开发环境(vscode)

    Vscode安装 ubuntu软件中自带vscode的安装包,一键完成,不废话,没有的想办法解决. 编译链操作 下载 官方最新地址 有系统区别,下载对应的压缩到到电脑 · for 64-bit Lin ...

  9. Tomcat学习总结(8)——Tomcat+Nginx集群解决均衡负载及生产环境热部署

    近日,为解决生产环境热部署问题,决定在服务器中增加一个tomcat组成集群,利用集群解决热部署问题.

最新文章

  1. 在Ubuntu 12.04 64bit上搭建Crtmpserver视频直播服务
  2. 阿里内部禁用Executors创建线程池,为什么?
  3. LCD1602液晶显示模块的单片机驱动深入详解之硬件篇
  4. 158行代码!程序员复现DeepMind图像生成神器
  5. 鸿蒙操作系统如何打通 Windows 操作系统?
  6. 互联网晚报 | 2月12日 星期六 | 宝马控股华晨宝马落锤;知乎否认视频部门裁员;《老友记》全十季高清版全网首播...
  7. Tomcat如果默认8080被占用修改端口号和查询端口号地址
  8. POJ3414 Pots —— BFS + 模拟
  9. 算法效率的度量--时间复杂度与空间复杂度
  10. mysql安装ecshop_ECSHOP安装流程
  11. sql函数—Lpad、Rpad
  12. pdf批量盖章软件_我的PDF休要乱用 超实用的PDF批量加水印神器 它来了
  13. (CVPR 2019) GSPN: Generative Shape Proposal Network for 3D Instance Segmentation in Point Cloud
  14. 三菱PLC FX-3u 台达伺服/步进 8工位转盘螺丝机程序
  15. OSChina 周日乱弹 —— 这个野男人是谁
  16. 计算机管理磁盘管理无法删除卷,磁盘管理器里删除卷是灰色的怎么处理
  17. 老男孩上海校区Python面试题
  18. 数独游戏-C语言实现
  19. 超稳定的接口——淘宝/天猫获得淘宝商品详情
  20. 美通企业周刊 | 爱立信已获100份5G商用合同;北京广东世界五百强数量领跑全国​...

热门文章

  1. 使用conda/pip安装pytorch 0.3.1教程(mac/windos/linux) pytorch 0.2.1
  2. Latex 表格 行合并,列合并,控制行间距 单元格宽度
  3. DIY 主机 所有AMD IntelCPU及主板
  4. Shell学习之结合正则表达式与通配符的使用(五)
  5. vs2017下开发C++MFC动态库实现
  6. 在Linux下查看环境变量
  7. 1.4三态缓存(tristate buffer)与 多路复用器(Multiplexers)
  8. 解决从其它搜索引擎不能直接访问百度页面的问题
  9. 多核分布式队列的实现:“偷”与“自私”的运用(1)
  10. 解耦与人类行为 (完整)