趁着双十一阿里云搞活动,三年299,加团就可以购买,顺便学习一下,做一个笔记。
选的的centOS

1. 更多/修改远程密码
2. 更多/重置密码 是重置的root密码
3. 远程链接
进入以后,输入root,password是你刚刚设置的密码。重设密码以后需要重启服务器。

root
useradd [yourname] // 创建一个用户明
passwd [yourname] // 确认用户名
//结下来会提示你输入密码
// 再次输入密码就完成了

在你本地输入:ssh yourname@ip地址(公)就能连上你的服务器啦。
接下来就可以愉快的在本地操作了。
首先安装nodejs(注意是nodejs ,不带js会找不到包)

这样是因为还没有给自己的用户添加root权限
su
密码:// 输入root密码
visudo
按 i 键进入, 找到 root ALL=(ALL) ALL 然后下面添加 xiawei ALL = (ALL) ALL
root ALL=(ALL) ALL
[yonghuming] ALL = (ALL) ALL
:wq //保存退出
su [用户名]
sudo yum install nodejs -y
node -v
npm -v //检查是否安装成功
使用NVM安装多版本
NVM(Node version manager)是Node.js的版本管理软件,使用户可以轻松在Node.js各个版本间进行切换。适用于长期做 node 开发的人员或有快速更新node版本、快速切换node版本这一需求的用户。
安装步骤:
直接使用git将源码克隆到本地的~/.nvm目录下,并检查最新版本。
yum install git
git clone https://github.com/cnpm/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
激活NVM。
echo ". ~/.nvm/nvm.sh" >> /etc/profile
source /etc/profile
如果报没有权限,先切换到root用户,输入
chmod +x /etc
// 若是还没有解决 chmod 777 /etc/profile
// 然后再切换到自己用户
列出Node.js的所有版本。
nvm list-remote
安装多个Node.js版本。
nvm install v6.9.5
nvm install v10.13.0
运行 nvm ls 查看已安装Node.js版本,当前使用的版本为v6.9.5。返回结果如下所示。
[root@iZXXXXZ .nvm]# nvm ls
v6.9.5
-> v7.4.0
system
stable -> 7.4 (-> v7.4.0) (default)
unstable -> 6.9 (-> v6.9.5) (default)
运行 nvm use v7.4.0 切换Node.js版本至v7.4.0。返回结果如下所示。
[root@iZXXXXZ .nvm]# nvm use v7.4.0
Now using node v7.4.0
NVM的更多操作请参考帮助文档:
nvm help
部署测试项目
新建项目文件example.js。
cd ~
touch example.js
使用vim编辑器打开项目文件example.js。
yum install vim
vim example.js //无权限就加sudo
输入 i,进入编辑模式,将以下项目文件内容粘贴到文件中。使用 Esc 按钮,退出编辑模式,输入 :wq,回车,保存文件内容并退出。
项目文件内容:
const http = require('http');
const hostname = '0.0.0.0';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
运行项目。
node ~/example.js``
说明 您也可以使用命令 node ~/example.js & 将项目置于后台运行。
使用命令查看项目端口是否存在。
netstat -tpln
-
登录ECS管理控制台,并在安全组中 添加安全组规则 放行端口(如本示例中为TCP 3000端口)。
image.png
image.png
image.png
image.png
image.png
-
(可选)如果您的实例中开启了防火墙,必须添加端口的入站规则(如本示例中为TCP 3000端口)。
-
在本地机器的浏览器中输入
http://实例公网IP地址:端口号
访问项目。
image.png
pm2
全局安装
sudo npm install pm2@latest -g
用法
最简单的启用一个应用: pm2 start app.js
停止:pm2 stop app_name|app_id
删除:pm2 delete app_name|app_id
重启:pm2 restart app_name|app_id
停止所有:pm2 stop all
查看所有的进程:pm2 list
查看所有的进程状态:pm2 status
查看某一个进程的信息:pm2 describe app_name|app_id
参数说明
--watch:监听应用目录源码的变化,一旦发生变化,自动重启。如果要精确监听、不见听的目录,最好通过配置文件
-i --instances:启用多少个实例,可用于负载均衡。如果-i 0或者-i max,则根据当前机器核数确定实例数目,可以弥补node.js缺陷
--ignore-watch:排除监听的目录/文件,可以是特定的文件名,也可以是正则。比如--ignore-watch="test node_modules "some scripts"
-n --name:应用的名称。查看应用信息的时候可以用到
-o --output <path>:标准输出日志文件的路径,有默认路径
-e --error <path>:错误输出日志文件的路径,有默认路径
--interpreter <interpreter>:the interpreter pm2 should use for executing app (bash, python...)。比如你用的coffee script来编写应用
完整参数命令: pm2 start ~/example.js --watch
可用来替代刚刚的node ~/example.js

待续
网友评论