# 安装最新版 Nodejs
Nodejs 比其他的软件好安装多了,直接去官网下载 Linux Binaries (x64)版
Nodejs-download
这里下载最新版本 21.6.1
# 安装并配置环境变量
下载下来解压之后放到 /usr/local/node
下
然后去配置环境变量
# 配置环境变量
进入 /etc/profile.d
目录下,创建一个 web.sh
文件
将之前的 nginx mysql redis 都加到环境变量里来
#/etc/profile.d/web.sh | |
export PATH="/usr/local/redis/bin:/usr/local/nginx/sbin:/usr/local/mysql/bin:/usr/local/node/bin:$PATH" |
然后执行 source /etc/profile
现在就可以在任何目录下使用 node 了
# 安装 yarn,pnpm 和 pm2
经过这几年的 nodejs 开发,发现 yarn 和 pnpm 的用法更简单高效,所以选择安装这 2 个
npm install -g yarn pnpm pm2 |
国内环境使然,yarn 和 pnpm 的代理都配置一下国内源,这里推荐淘宝源,中科大源和华为源
华为源: https://mirrors.huaweicloud.com/repository/npm/
中科大源: https://mirrors.tuna.tsinghua.edu.cn/npm/
淘宝源: https://registry.npmmirror.com
# 设置为淘宝源 | |
yarn config set registry https://registry.npmmirror.com | |
pnpm config set registry https://registry.npmmirror.com | |
npm config set registry https://registry.npmmirror.com |
# 设置 pm2 开机自启
[root@VM-12-5-opencloudos root]# pm2 startup | |
[PM2] Init System found: systemd | |
Platform systemd | |
Template | |
[Unit] | |
Description=PM2 process manager | |
Documentation=https://pm2.keymetrics.io/ | |
After=network.target | |
[Service] | |
Type=forking | |
User=root | |
LimitNOFILE=infinity | |
LimitNPROC=infinity | |
LimitCORE=infinity | |
Environment=PATH=/usr/local/redis/bin:/usr/local/nginx/sbin:/usr/local/mysql/bin:/usr/local/node/bin:/usr/local/node/bin:/usr/share/Modules/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin | |
Environment=PM2_HOME=/root/.pm2 | |
PIDFile=/root/.pm2/pm2.pid | |
Restart=on-failure | |
ExecStart=/usr/local/node/lib/node_modules/pm2/bin/pm2 resurrect | |
ExecReload=/usr/local/node/lib/node_modules/pm2/bin/pm2 reload all | |
ExecStop=/usr/local/node/lib/node_modules/pm2/bin/pm2 kill | |
[Install] | |
WantedBy=multi-user.target | |
Target path | |
/etc/systemd/system/pm2-root.service | |
Command list | |
[ 'systemctl enable pm2-root' ] | |
[PM2] Writing init configuration in /etc/systemd/system/pm2-root.service | |
[PM2] Making script booting at startup... | |
[PM2] [-] Executing: systemctl enable pm2-root... | |
Created symlink /etc/systemd/system/multi-user.target.wants/pm2-root.service → /etc/systemd/system/pm2-root.service. | |
[PM2] [v] Command successfully executed. | |
+---------------------------------------+ | |
[PM2] Freeze a process list on reboot via: | |
$ pm2 save | |
[PM2] Remove init script via: | |
$ pm2 unstartup systemd |
# 结束
此刻 nodejs
的环境也安装好了