nodejs应用在linux服务器中的部署
1.(可选)添加用户:
addgroup wmui
添加用户组useradd -d /home/wmui -s /bin/bash -m wmui
创建wmui用户passwd wmui
设置密码,如果忘记密码,也可用此命令重置密码usermod -a -G wmui wmui
添加用户到组visudo
设置sudo权限
然后会跳转到下面页面
root ALL=(ALL:ALL) ALL
下面添加wmui ALL=(ALL) NOPASSWD: ALL
ctrl+x
保存退出
接下来打开一个新的窗口,测试是否登陆成功。
2.(可选)ssh无密码登陆配置
首先你需要在本地安装git并生成id_rsa.pub
,打开命令行
在本地生成公钥和私钥:ssh-keygen -t rsa -b 4096 -C "1719442545@qq.com"
在服务器生成公钥和私钥:ssh-keygen -t rsa -b 4096 -C "1719442545@qq.com"
在服务器窗口输入:echo "[your public key]" > ~/.ssh/authorized_keys
将本机的公钥拷贝到服务器的authorized_keys文件
完成以上操作,测试是否生效,重启服务:sudo service ssh restart
新打开一个窗口,输入用户名回车,登陆成功
3.nodejs环境搭建
安装常用软件sudo apt-get install vim openssl build-essential libssl-dev wget curl git
nvm安装wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
打开新的窗口nvm install node v8.1.3 这里也可以下载编译好的压缩包进行安装
nvm use node v8.1.3
nvm alias default v8.1.3
默认版本
安装常用node包npm i pm2 webpack vue-cli -g
4.创建和部署hello world
以root用户身份在根目录下创建www目录,www目录下创建myNodeApp文件夹,里面就一个文件,app.js,内容如下:
const http = require('http') http.createServer(function(req,res) { res.writeHead(200,{'Content-Type':'text/plain'}) res.end('hello world') }).listen(8081) console.log('server test')
(如果你是自己结合nodejs框架如express编写的应用(含有package.json),则直接将项目代码拷贝至www目录下,进入项目目录如myNodeApp,执行命令
npm install 安装依赖。)
进入到www下myNodeApp文件夹下
hello world测试:
pm2 start app.js
pm2 list 查看启动的应用
pm2 show hello 查看详细信息
pm2 logs 查看当前信息
pm2 stop hello 停止hello
pm2 delete hello 删除hello
如图所示表示启动成功,输入hello.86886.wang就可以看到hello world了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话