你们是怎么部署 nodejs 的?

2024-01-03 10:04:21 +08:00
 crazyTanuki

1.装 nodejs 环境然后 build 完直接服务器 node

2.宝塔面板直接用 node 模块功能

3.pm2 直接跑

4.docker 跑 nodejs 镜像

5.k8s 集群部署 nodejs 镜像

6.服务器上直接 npm run dev

18713 次点击
所在节点    Node.js
125 条回复
ysc3839
2024-01-03 11:45:48 +08:00
@ysc3839 上述是公司项目的做法,自己的没什么正经项目,都是 tmux 直接运行。
yuuk
2024-01-03 11:53:54 +08:00
4+3 ,通过 docker 脚本起 pm2 ,pm2 再起服务脚本
yuuk
2024-01-03 11:56:05 +08:00
@dudubaba 为啥这么说?可以看日志和性能啊,还有进程保护、集群模式,总的来说还是挺方便。难道还有其他代替方案吗?
wusheng0
2024-01-03 11:58:03 +08:00
3 ,4
guguji5
2024-01-03 12:04:45 +08:00
之前 3 ,现在 4 (什么日志不日志的,我从来不看日志)
DingJZ
2024-01-03 12:22:56 +08:00
3 ,想用 docker 跑一直没空搞
顺便问问大家怎么和 CI 工具配合的,我现在是把服务器作为 jenkins 的从节点,直接在节点上编译然后 pm2 启动
如果构建再 copy 过去太大了,包括用 docker 镜像,node_modules 打不打在里面
lbunderway
2024-01-03 12:28:06 +08:00
没人用 swarm 吗
NNNNzs
2024-01-03 12:39:55 +08:00
@crazyTanuki egg 或者 nestjs 是可以直接 npm start 的不是说真 npm run dev
UXha45veSNpWCwZR
2024-01-03 12:40:52 +08:00
新手,第一个 nodejs 项目.3.
Roojay
2024-01-03 12:41:56 +08:00
一般静态服务直接用[serve]( https://www.npmjs.com/package/serve) 然后 `nohup serve -s -n -l 8080 ./web > web.log 2>&1 &`
BeautifulSoap
2024-01-03 12:44:43 +08:00
Lambda
整个项目 zip 打包后传上去就行,太大的话 webpack 之类的 bundle 一下
jiangzm
2024-01-03 13:01:57 +08:00
OP 分的有点乱,宝塔是什么鬼,1 、6 应该属于同一类
按部署方式来说
1 、CI/CD ( Jeknins/GitLab CI/TeamCity/...)
2 、DevOps/Pipeline ( AWS Pipeline/阿里云 Devops/腾讯 Coding )
3 、手撸

按运行环境来说
1 、VM/PM
2 、Docker
3 、Kubernetes

按运行方式来说
1 、PM2
2 、Supervisor
3 、直接运行
m319
2024-01-03 13:07:40 +08:00
这个 6 可太 6 了
hikarikun0203
2024-01-03 13:08:11 +08:00
没有 serverless?
learninining
2024-01-03 13:16:34 +08:00
6 有点 6
adoal
2024-01-03 13:16:57 +08:00
非容器化的传统部署,至少要写好 systemd unit ,配好日志定时切分轮替。初始部署以及做过基础设施配置变更后至少要 reboot 一次服务器看能否自动启动完毕且运行正常。
xiaojun996
2024-01-03 13:25:49 +08:00
3 & 4
defunct9
2024-01-03 13:26:21 +08:00
7. systemctl 做成服务跑
unt
2024-01-03 13:26:35 +08:00
我比较担心 docker 的性能损耗和稳定性,我亲身经历过我直接用 nginx 启动的服务没出过问题,docker (所有容器)崩过好几次
dc2002007
2024-01-03 13:28:26 +08:00
@express 我曾经通过 pm2 守护 npm run dev ,完全不会挂的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1005371

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX