1.装 nodejs 环境然后 build 完直接服务器 node
2.宝塔面板直接用 node 模块功能
3.pm2 直接跑
4.docker 跑 nodejs 镜像
5.k8s 集群部署 nodejs 镜像
6.服务器上直接 npm run dev
1.装 nodejs 环境然后 build 完直接服务器 node
2.宝塔面板直接用 node 模块功能
3.pm2 直接跑
4.docker 跑 nodejs 镜像
5.k8s 集群部署 nodejs 镜像
6.服务器上直接 npm run dev
|
coderxyJan 3, 2024
1
5
|
|
passonJan 3, 2024
2
4 3
|
|
shimada666Jan 3, 2024
3
4,5 都有,看具体情况
|
|
NNNNzsJan 3, 2024
4
3 6
|
|
IamUNICODEJan 3, 2024
5
4
3 5 目前是 4 5 |
|
6
@NNNNzs 牛啊老哥
|
|
wyhoooJan 3, 2024
7
6 也太秀了
|
|
jojo0830Jan 3, 2024
8
1 为啥没人用?
|
|
expressJan 3, 2024
10
纯好奇,6 不会崩么,日志怎么打,出现错误怎么查呢
|
|
duanxianzeJan 3, 2024
11
@jojo0830 直接 node 多进程不容易控制
|
|
inasJan 3, 2024
12
GitHub Actions
|
|
wu67Jan 3, 2024
13
3 4 我都在用.
现在几乎都是 4 了, 之前的人留的配置, 日志不自动删, 也没有文档关于手动清理的, 服务器硬盘占用暴涨, 后来我给改成 docker 跑镜像了 |
|
pkoukkJan 3, 2024
14
3 4 5 按顺序用过来的,现在基本上都是 5 了
|
|
15
@wu67 感觉 4 已经取代 3 了,不过现在身边很多大佬都用 5 取代 4 了
|
|
461229187Jan 3, 2024
16
6 是真的 6
|
|
v2texJan 3, 2024
17
在 4 或 5 里用 3 跑🐶
|
|
18
@express 只能重启
|
|
19
@jojo0830 应该是没那么方便的原因
|
|
20
@v2tex 45 不是已经解决了 3 所解决的问题了吗
|
|
wu67Jan 3, 2024
21
@crazyTanuki k8s 需要运维, 很多中小公司没有这个实力, 尤其是那些业务驱动型的小公司
|
|
owen800qJan 3, 2024 via iPhone
22
6
|
|
wonderfulcxmJan 3, 2024 via iPhone
23
@wu67 docker 更占空间吧,日志文件我也映射出来。
|
|
24
@wu67 主要用的还是部署服务,特性功能用的比较少
|
|
loveDiu4everJan 3, 2024
25
3 是 最快的
|
|
26
@crazyTanuki 一方面是为了用 pm2 的日志和启动多个服务方便,还有就是随时可以从容器切换到非容器环境
|
|
ada87Jan 3, 2024
27
serverless deploy
|
|
28
@ada87 这是什么神仙部署?类似云开发吗?
|
|
wu67Jan 3, 2024
29
@wonderfulcxm docker 只是镜像大, 但是每次更新会删掉旧的. pm2 以前的人留下来的配置, 谁敢碰呀, 日志每天爆炸性增长, 我接手的时候, 8 个 G....
|
|
d119Jan 3, 2024
30
强力推荐一下
|
|
unclemczJan 3, 2024 via Android
32
类似 3 ,我用 forever ,然后外面加 nginx 。
|
|
difJan 3, 2024
33
PM2
|
|
bianhuiJan 3, 2024
34
能容器尽量容器
|
|
35
4/5 优先。但是要吃满多核 cpu 需要前面有 gateway lb
所以有时候还用 pm2 cluster mode ,简单 |
|
dudubabaJan 3, 2024
36
流水线+集群,生产环境 pm2 作用不大。
|
|
june4Jan 3, 2024
37
本地 build 打包通过脚本传上服务器。
服务器用 systemd 管理各个进程,有多进程需求的用的是第三方 npm 包(就是简单包装了下 node 内置的 cluster 功能)。 |
|
0754Jan 3, 2024
38
6
|
|
ysc3839Jan 3, 2024 via Android
39
pkg 打包可执行文件,然后 systemd 运行
|
|
XJPlusJan 3, 2024
40
以前 Windows 服务器的时候用过 6 ,哈哈哈哈哈哈
|
|
yuukJan 3, 2024
42
4+3 ,通过 docker 脚本起 pm2 ,pm2 再起服务脚本
|
|
wusheng0Jan 3, 2024 via Android
44
3 ,4
|
|
guguji5Jan 3, 2024
45
之前 3 ,现在 4 (什么日志不日志的,我从来不看日志)
|
|
DingJZJan 3, 2024
46
3 ,想用 docker 跑一直没空搞
顺便问问大家怎么和 CI 工具配合的,我现在是把服务器作为 jenkins 的从节点,直接在节点上编译然后 pm2 启动 如果构建再 copy 过去太大了,包括用 docker 镜像,node_modules 打不打在里面 |
|
lbunderwayJan 3, 2024
47
没人用 swarm 吗
|
|
NNNNzsJan 3, 2024
48
@crazyTanuki egg 或者 nestjs 是可以直接 npm start 的不是说真 npm run dev
|
|
UXha45veSNpWCwZRJan 3, 2024
49
新手,第一个 nodejs 项目.3.
|
|
RoojayJan 3, 2024
50
一般静态服务直接用[serve]( https://www.npmjs.com/package/serve) 然后 `nohup serve -s -n -l 8080 ./web > web.log 2>&1 &`
|
|
BeautifulSoapJan 3, 2024
51
Lambda
整个项目 zip 打包后传上去就行,太大的话 webpack 之类的 bundle 一下 |
|
52
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 、直接运行 |
|
m319Jan 3, 2024
53
这个 6 可太 6 了
|
|
hikarikun0203Jan 3, 2024
54
没有 serverless?
|
|
learnininingJan 3, 2024
55
6 有点 6
|
|
adoalJan 3, 2024
56
非容器化的传统部署,至少要写好 systemd unit ,配好日志定时切分轮替。初始部署以及做过基础设施配置变更后至少要 reboot 一次服务器看能否自动启动完毕且运行正常。
|
|
xiaojun996Jan 3, 2024
57
3 & 4
|
|
defunct9Jan 3, 2024
58
7. systemctl 做成服务跑
|
|
untJan 3, 2024
59
我比较担心 docker 的性能损耗和稳定性,我亲身经历过我直接用 nginx 启动的服务没出过问题,docker (所有容器)崩过好几次
|
|
CAzeJan 3, 2024
61
3 & 4
3 、功能不多我一般直接挂 PM2 ; 4 、一般是做 web 的中间件,或者是拿去写接口 |
|
photon006Jan 3, 2024
62
4 ,用 docker-compose 的 scale 语法实现 zero downtime 平滑重启
https://www.tines.com/blog/simple-zero-downtime-deploys-with-nginx-and-docker-compose |
|
sumarkerJan 3, 2024
63
3
毫无疑问... |
|
kuxuanJan 3, 2024
64
3 多个项目都用
|
|
rupertJan 3, 2024
65
6 有其合理性,现在很多前端用 Vite 开发,众所周知用 Vite 开发但是打包用的是其他的工具,可能打包有问题,所以
|
|
lstzJan 3, 2024 via iPhone
66
用 docker ,版本号更新能 rollback ,心安
|
|
PrtScScrLkJan 3, 2024
67
1 & 3
|
|
68
以前用 pm2 跑,后来更新的时候老是翻车(多数是包更新问题);后来就改成 docker 镜像了。
|
|
vultrJan 3, 2024
69
我只有开发的时候用 nodejs ,部署的时候根本用不上它,直接导出纯静态文件了。
|
|
ljh0585Jan 3, 2024
70
上家公司 pm2 ,自己的项目 nohup ,现在 k8s
|
|
AllenCaiJan 3, 2024
71
nvm 用来控制版本,直接跑
|
|
AllenCaiJan 3, 2024
73
@AllenCai
类似这样,感觉很轻很方便 ···js module.exports = { apps: [{ name: 'app-node-12', script: 'app.js', exec_interpreter: '/home/.nvm/versions/node/v12.18.3/bin/node' },{ name: 'app-node-14', script: 'app.js', exec_interpreter: '/home/.nvm/versions/node/v14.15.0/bin/node' }] }; ··· |
|
txzh007Jan 3, 2024
74
6 这个 开发环境暴露出来的东西有点多啊
|
|
heviJan 3, 2024
75
主要是 3
公司租的小机器,没必要强上 docker 。。 |
|
ClearMokiJan 3, 2024
76
怕啥,直接 git clone 然后 install ,yarn start:dev 我司根本不怕的
|
|
danhuaJan 3, 2024
77
3
|
|
abearJan 3, 2024
78
@var1122 #68 docker 镜像,每次的项目更新,package 是重新下载 node_module 吗,打包的 node 的 app ,是放镜像里面还是放外面
|
|
zackzergzengJan 3, 2024
79
7 包里自带 node 二进制文件
|
|
wherewhaleJan 3, 2024
80
AWS + Serverless
|
|
81
@wherewhale 这个怎么玩?直接写云函数?那些类似 koa 的框架 api 怎么搞
|
|
GeorgeGalwayJan 3, 2024
82
666666
|
|
wherewhaleJan 3, 2024
83
@crazyTanuki 对 用函数 lambda 满足要求 koa 可用可不用 我们选择 graphql
|
|
var1122Jan 3, 2024
84
@abear 就是因为 npm 包的问题,所以每次 release 都是放到镜像里面;如果是拉单个 images 完整包肯定很大吗,但是通过 docker push 往镜像管理上传的时候,node 与 os 本体部分是公共抽离的,只有 node_modules 和程序的大小;
|
|
85
@wherewhale 感觉有点超前,周边没有用这个的...
|
|
wherewhaleJan 3, 2024
86
@crazyTanuki 响应不会特别快 国内我估计接受不了
|
|
testliyuJan 3, 2024
87
dist 放在 nginx 里的是哪种
|
|
zoruiJan 3, 2024
88
原来是 2+5 k8s 里面跑 pm2 镜像
|
|
zoruiJan 3, 2024
89
原来是 3+5 k8s 里面跑 pm2 镜像
|
|
ada87Jan 3, 2024
90
@crazyTanuki #28 serverless ,方便个人感觉第二,目前能排第一的只能是 Vercel
|
|
julyclydeJan 3, 2024
91
使用 pm2 ,就像使用 supervisorD 那么错
正确的做法应该是 systemd/docker 直接运行你的应用程序入口 |
|
JackerissJan 3, 2024
92
pm2 我不光跑 node ,python 什么的也用,实在是太好用了
|
|
cutchopJan 3, 2024
93
pm2
|
|
Azure99Jan 3, 2024
94
自己的项目 4
|
|
huangsijun17Jan 3, 2024
95
使用 systemd 呢?
|
|
96
用的 docker ,但是一直觉得 docker 镜像太大了,起步几百兆,同样的 java 项目就才几十兆
|
|
JianzsJan 3, 2024
97
@ada87 #27 方便交流下平常是怎么使用 serverless 的么?会用到它的哪些能力?
我最近也在做一个 Serverless 领域的项目,希望能给开发者带来更好的开发体验:开发者只需要写 TS ,就能够部署到自己的 AWS 、阿里云 等云账户,云间迁移不需要修改代码。 所以,想了解下现有 serverless 工具的用户是怎么用的,以及会不会遇到什么问题~ https://github.com/pluto-lang/pluto |
|
JianzsJan 3, 2024
98
@BeautifulSoap 终于发现国内使用 Lambda 的人了,我想问一下,你会用到 AWS 的 BaaS 组件么,例如 DynamoDB 之类的,然后在 Lambda 调用? 你在开发这类应用的时候,有没有感觉开发过程很繁琐,需要在各个地方点来点去,有没有感觉权限配置之类的很复杂?想了解一下你的使用感受。
我最近在做一个 Serverless 领域的项目,开发者只需要写 TS ,自动推导代码依赖的 BaaS 组件,自动创建 BaaS 组件,和 FaaS 函数,并且自动配置好权限。所以,我想了解下开发者需不需要这类工具。 https://github.com/pluto-lang/pluto |
|
JianzsJan 3, 2024
99
@wherewhale #80
@hikarikun0203 方便交流下平常是怎么使用 serverless 的么?会用到它的哪些能力? 我最近也在做一个 Serverless 领域的项目,希望能给开发者带来更好的开发体验:开发者只需要写 TS ,就能够部署到自己的 AWS 、阿里云 等云账户,云间迁移不需要修改代码。 所以,想了解下现有 serverless 工具的用户是怎么用的,以及会不会遇到什么问题~ https://github.com/pluto-lang/pluto |
|
tntinJan 3, 2024
100
目前我用的是 systemd 运行,但感觉不是很舒服。
用的 nest.js 然后 build 后上传服务器 需要在服务端 npm install ,这里感觉装依赖有点麻烦,不知道有没有办法打包的时候将用到的依赖一起打包 |