可能听说过Windows系统提供的远程桌面。实际上,Linux中也提供了类似的功能,其远程连接基于命令行。
在Windows端连接Linux需要使用SSH软件,最流行的有Xshell和SecureCRT。
首先确定需要连接的云服务器或虚拟机拥有联网能力,不一定要连接到互联网,只需要和连接端处于同一域内,使用ping命令测试是否连通(需要开发ping端口)即可。
在Linux中使用如下命令查看IP地址,运行结果如
购买云服务器时一般会告知公网地址。知道地址且保证防火墙开启后(使用SSH端口),可以使用Xshell等支持SSH的软件。单击左上方的“+”或新建会话,新建一个Linux连接,如图1
搭建服务器部署环境
API都是通过Express运行在本地的开发环境中,即通过Express自带的HTTP模块启动测试服务器。仅限于在开发环境中或非生产环境中使用测试服务器运行项目,而在生产环境中不能这样做。本节将搭建真正的服务器环境。
本节介绍的pm2包含进程守护和自动重启等功能,然后还会介绍Nginx,用它来部署前端服务或图片等静态文件。
配置pm2
Node.js依赖于进程实现代码的解析和运行。也就是说,在服务器中只要保证Node.js的进程不宕机,程序就会一直运行下去守护进程用于保证进程不会因为某些风险导致中断或异常。pm2为守护进程提供了很多功能,如进程的配置、多进程、错误日志打印等功能。
在服务器或本地环境中安装pm2,使用如下命令:
npm install pm2 -g
安装过程如
pm2测试
pm2的常用命令参见表
使用pm2 start启动Express程序,也可以在package.json中编辑一个命令进行启动
{ "name": "server", "version": "0.0.0", "private": true, "scripts": { "start": "node ./bin/www", "production":"pm2 start ./bin/www" }, "dependencies": { "cookie-parser": "~1.4.4", "debug": "~2.6.9", "express": "~4.16.1", "morgan": "~1.9.1", "redis": "^3.0.2" } }
通过pm2启动的Node.js应用可以使用命令查看日志或资源占用情况。本书介绍的Express实例涉及的所有命令和执行结果都会保存到pm2的日志中。可以使用如下命令查看日志结果,
pm2 logs