Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,用来方便地搭建快速的易于扩展的网络应用。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效,非常适合运行在分布式设备的数据密集型的实时应用。Node.js 的包管理器 npm,是全球最大的开源库生态系统
典型的应用场景包括:
wget https://nodejs.org/dist/v10.16.1/node-v10.16.1-linux-x64.tar.xz
tar xf node-v10.16.1-linux-x64.tar.xz -C /usr/local/
ln -s node-v10.16.1-linux-x64 node
vim /etc/profile.d/node.sh
export PATH=$PATH:/usr/local/node/bin
npm config set registry https://registry.npm.taobao.org/
cat /root/.npmrc
registry=https://registry.npm.taobao.org/
vim example.js
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 &>/dev/null &
Node包管理器(npm)是Node自带的工具,可以轻松安装第三方Node模块。
它用一行命令就能从package.json文件中读出依赖项,把它们都装好
在项目根目录下执行:
npm install
你应该能看到一个新创建的node_modules目录,这个目录中放的就是程序的依赖项
npm install pm2 -g
create database firekylin character set utf8 collate utf8_general_ci;
grant all on firekylin.* to 'firekylin'@'127.0.0.1' identified by '123456';
mysql -h 127.0.0.1 -ufirekylin -p123456
FireKylin 开源博客系统,是由奇虎360公司Web前端工程师组成的专业团队 75Team 进行开发和维护
wget https://firekylin.org/release/latest.tar.gz
tar xf latest.tar.gz
cd firekylin
npm install
cp pm2_default.json pm2.json
/opt/firekylin
vim pm2.json
{
"apps": [{
"name": "firekylin",
"script": "www/production.js",
"cwd": "/opt/firekylin",
"exec_mode": "fork",
"max_memory_restart": "1G",
"autorestart": true,
"node_args": [],
"args": [],
"env": {
}
}]
}
pm2 startOrReload pm2.json
firewall-cmd --zone=public --add-port=8360/tcp --permanent
http://ip:8360/
http://ip:8360/admin