你们是怎么部署 nodejs 的?
source link: https://www.v2ex.com/t/1005371
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
1.装 nodejs 环境然后 build 完直接服务器 node
2.宝塔面板直接用 node 模块功能
3.pm2 直接跑
4.docker 跑 nodejs 镜像
5.k8s 集群部署 nodejs 镜像
6.服务器上直接 npm run dev
第 1 条附言 · 18 小时 9 分钟前
coderxy 20 小时 12 分钟前 |
passon 20 小时 11 分钟前 |
shimada666 20 小时 10 分钟前 4,5 都有,看具体情况
|
NNNNzs 20 小时 10 分钟前 |
IamUNICODE 20 小时 9 分钟前 4
3 5 目前是 4 5 |
wyhooo 20 小时 6 分钟前 6 也太秀了
|
jojo0830 20 小时 4 分钟前 1 为啥没人用?
|
express 19 小时 59 分钟前 纯好奇,6 不会崩么,日志怎么打,出现错误怎么查呢
|
duanxianze 19 小时 57 分钟前 @jojo0830 直接 node 多进程不容易控制
|
inas 19 小时 56 分钟前 GitHub Actions
|
wu67 19 小时 54 分钟前 3 4 我都在用.
现在几乎都是 4 了, 之前的人留的配置, 日志不自动删, 也没有文档关于手动清理的, 服务器硬盘占用暴涨, 后来我给改成 docker 跑镜像了 |
pkoukk 19 小时 53 分钟前 3 4 5 按顺序用过来的,现在基本上都是 5 了
|
crazyTanuki 19 小时 51 分钟前 @wu67 感觉 4 已经取代 3 了,不过现在身边很多大佬都用 5 取代 4 了
|
461229187 19 小时 50 分钟前 6 是真的 6
|
v2tex 19 小时 50 分钟前 在 4 或 5 里用 3 跑🐶
|
crazyTanuki 19 小时 48 分钟前 @jojo0830 应该是没那么方便的原因
|
crazyTanuki 19 小时 48 分钟前 @v2tex 45 不是已经解决了 3 所解决的问题了吗
|
wu67 19 小时 47 分钟前 @crazyTanuki k8s 需要运维, 很多中小公司没有这个实力, 尤其是那些业务驱动型的小公司
|
owen800q 19 小时 47 分钟前 via iPhone |
wonderfulcxm 19 小时 46 分钟前 via iPhone @wu67 docker 更占空间吧,日志文件我也映射出来。
|
crazyTanuki 19 小时 45 分钟前 @wu67 主要用的还是部署服务,特性功能用的比较少
|
princesswar721 19 小时 39 分钟前 3 是 最快的
|
v2tex 19 小时 37 分钟前 1 @crazyTanuki 一方面是为了用 pm2 的日志和启动多个服务方便,还有就是随时可以从容器切换到非容器环境
|
ada87 19 小时 34 分钟前 serverless deploy
|
crazyTanuki 19 小时 33 分钟前 @ada87 这是什么神仙部署?类似云开发吗?
|
wu67 19 小时 32 分钟前 @wonderfulcxm docker 只是镜像大, 但是每次更新会删掉旧的. pm2 以前的人留下来的配置, 谁敢碰呀, 日志每天爆炸性增长, 我接手的时候, 8 个 G....
|
unclemcz 19 小时 26 分钟前 via Android 类似 3 ,我用 forever ,然后外面加 nginx 。
|
dif 19 小时 21 分钟前 |
bianhui 19 小时 17 分钟前 能容器尽量容器
|
jsq2627 19 小时 11 分钟前 4/5 优先。但是要吃满多核 cpu 需要前面有 gateway lb
所以有时候还用 pm2 cluster mode ,简单 |
dudubaba 19 小时 2 分钟前 流水线+集群,生产环境 pm2 作用不大。
|
june4 19 小时 1 分钟前 本地 build 打包通过脚本传上服务器。
服务器用 systemd 管理各个进程,有多进程需求的用的是第三方 npm 包(就是简单包装了下 node 内置的 cluster 功能)。 |
dd0754 18 小时 59 分钟前 |
ysc3839 18 小时 35 分钟前 via Android pkg 打包可执行文件,然后 systemd 运行
|
XJPlus 18 小时 35 分钟前 以前 Windows 服务器的时候用过 6 ,哈哈哈哈哈哈
|
yuuk520 18 小时 26 分钟前 4+3 ,通过 docker 脚本起 pm2 ,pm2 再起服务脚本
|
wusheng0 18 小时 22 分钟前 via Android |
guguji5 18 小时 16 分钟前 之前 3 ,现在 4 (什么日志不日志的,我从来不看日志)
|
DingJZ 17 小时 57 分钟前 3 ,想用 docker 跑一直没空搞
顺便问问大家怎么和 CI 工具配合的,我现在是把服务器作为 jenkins 的从节点,直接在节点上编译然后 pm2 启动 如果构建再 copy 过去太大了,包括用 docker 镜像,node_modules 打不打在里面 |
lbunderway 17 小时 52 分钟前 没人用 swarm 吗
|
NNNNzs 17 小时 40 分钟前 @crazyTanuki egg 或者 nestjs 是可以直接 npm start 的不是说真 npm run dev
|
MeteorVIP 17 小时 39 分钟前 新手,第一个 nodejs 项目.3.
|
Roojay 17 小时 38 分钟前 一般静态服务直接用[serve]( https://www.npmjs.com/package/serve) 然后 `nohup serve -s -n -l 8080 ./web > web.log 2>&1 &`
|
BeautifulSoap 17 小时 36 分钟前 Lambda
整个项目 zip 打包后传上去就行,太大的话 webpack 之类的 bundle 一下 |
jiangzm 17 小时 18 分钟前 7 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 17 小时 13 分钟前 这个 6 可太 6 了
|
hikarikun0203 17 小时 12 分钟前 没有 serverless?
|
learninining 17 小时 4 分钟前 |
adoal 17 小时 3 分钟前 非容器化的传统部署,至少要写好 systemd unit ,配好日志定时切分轮替。初始部署以及做过基础设施配置变更后至少要 reboot 一次服务器看能否自动启动完毕且运行正常。
|
xiaojun996 16 小时 54 分钟前 |
defunct9 16 小时 54 分钟前 7. systemctl 做成服务跑
|
unt 16 小时 54 分钟前 我比较担心 docker 的性能损耗和稳定性,我亲身经历过我直接用 nginx 启动的服务没出过问题,docker (所有容器)崩过好几次
|
CAze 16 小时 52 分钟前 3 & 4
3 、功能不多我一般直接挂 PM2 ; 4 、一般是做 web 的中间件,或者是拿去写接口 |
sumarker 16 小时 1 分钟前 3
毫无疑问... |
kuxuan 15 小时 50 分钟前 3 多个项目都用
|
rupert 15 小时 47 分钟前 6 有其合理性,现在很多前端用 Vite 开发,众所周知用 Vite 开发但是打包用的是其他的工具,可能打包有问题,所以
|
lstz 15 小时 45 分钟前 via iPhone 用 docker ,版本号更新能 rollback ,心安
|
PrtScScrLk 15 小时 40 分钟前 |
var1122 15 小时 37 分钟前 1 以前用 pm2 跑,后来更新的时候老是翻车(多数是包更新问题);后来就改成 docker 镜像了。
|
vultr 15 小时 32 分钟前 我只有开发的时候用 nodejs ,部署的时候根本用不上它,直接导出纯静态文件了。
|
ljh0585 15 小时 31 分钟前 上家公司 pm2 ,自己的项目 nohup ,现在 k8s
|
AllenCai 15 小时 26 分钟前 nvm 用来控制版本,直接跑
|
AllenCai 15 小时 19 分钟前 @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' }] }; ··· |
txzh007 15 小时 19 分钟前 6 这个 开发环境暴露出来的东西有点多啊
|
hevi 15 小时 19 分钟前 主要是 3
公司租的小机器,没必要强上 docker 。。 |
ClearMoki 15 小时 17 分钟前 怕啥,直接 git clone 然后 install ,yarn start:dev 我司根本不怕的
|
danhua 15 小时 15 分钟前 |
abear 15 小时 15 分钟前 @var1122 #68 docker 镜像,每次的项目更新,package 是重新下载 node_module 吗,打包的 node 的 app ,是放镜像里面还是放外面
|
zackzergzeng 15 小时 7 分钟前 7 包里自带 node 二进制文件
|
wherewhale 14 小时 18 分钟前 AWS + Serverless
|
crazyTanuki 14 小时 11 分钟前 @wherewhale 这个怎么玩?直接写云函数?那些类似 koa 的框架 api 怎么搞
|
GeorgeGalway 14 小时 9 分钟前 666666
|
wherewhale 13 小时 57 分钟前 @crazyTanuki 对 用函数 lambda 满足要求 koa 可用可不用 我们选择 graphql
|
var1122 13 小时 57 分钟前 @abear 就是因为 npm 包的问题,所以每次 release 都是放到镜像里面;如果是拉单个 images 完整包肯定很大吗,但是通过 docker push 往镜像管理上传的时候,node 与 os 本体部分是公共抽离的,只有 node_modules 和程序的大小;
|
crazyTanuki 13 小时 45 分钟前 @wherewhale 感觉有点超前,周边没有用这个的...
|
wherewhale 13 小时 30 分钟前 @crazyTanuki 响应不会特别快 国内我估计接受不了
|
testliyu 13 小时 20 分钟前 dist 放在 nginx 里的是哪种
|
zorui 13 小时 19 分钟前 原来是 2+5 k8s 里面跑 pm2 镜像
|
zorui 13 小时 18 分钟前 原来是 3+5 k8s 里面跑 pm2 镜像
|
ada87 11 小时 27 分钟前 @crazyTanuki #28 serverless ,方便个人感觉第二,目前能排第一的只能是 Vercel
|
julyclyde 10 小时 58 分钟前 使用 pm2 ,就像使用 supervisorD 那么错
正确的做法应该是 systemd/docker 直接运行你的应用程序入口 |
Jackeriss 10 小时 13 分钟前 pm2 我不光跑 node ,python 什么的也用,实在是太好用了
|
cutchop 9 小时 50 分钟前 |
Azure99 9 小时 47 分钟前 自己的项目 4
|
huangsijun17 9 小时 45 分钟前 使用 systemd 呢?
|
Imindzzz 9 小时 44 分钟前 用的 docker ,但是一直觉得 docker 镜像太大了,起步几百兆,同样的 java 项目就才几十兆
|
Jianzs 8 小时 40 分钟前 @ada87 #27 方便交流下平常是怎么使用 serverless 的么?会用到它的哪些能力?
我最近也在做一个 Serverless 领域的项目,希望能给开发者带来更好的开发体验:开发者只需要写 TS ,就能够部署到自己的 AWS 、阿里云 等云账户,云间迁移不需要修改代码。 所以,想了解下现有 serverless 工具的用户是怎么用的,以及会不会遇到什么问题~ https://github.com/pluto-lang/pluto |
Jianzs 8 小时 34 分钟前 @BeautifulSoap 终于发现国内使用 Lambda 的人了,我想问一下,你会用到 AWS 的 BaaS 组件么,例如 DynamoDB 之类的,然后在 Lambda 调用? 你在开发这类应用的时候,有没有感觉开发过程很繁琐,需要在各个地方点来点去,有没有感觉权限配置之类的很复杂?想了解一下你的使用感受。
我最近在做一个 Serverless 领域的项目,开发者只需要写 TS ,自动推导代码依赖的 BaaS 组件,自动创建 BaaS 组件,和 FaaS 函数,并且自动配置好权限。所以,我想了解下开发者需不需要这类工具。 https://github.com/pluto-lang/pluto |
Jianzs 8 小时 32 分钟前 @wherewhale #80
@hikarikun0203 方便交流下平常是怎么使用 serverless 的么?会用到它的哪些能力? 我最近也在做一个 Serverless 领域的项目,希望能给开发者带来更好的开发体验:开发者只需要写 TS ,就能够部署到自己的 AWS 、阿里云 等云账户,云间迁移不需要修改代码。 所以,想了解下现有 serverless 工具的用户是怎么用的,以及会不会遇到什么问题~ https://github.com/pluto-lang/pluto |
tntin 8 小时 26 分钟前 目前我用的是 systemd 运行,但感觉不是很舒服。
用的 nest.js 然后 build 后上传服务器 需要在服务端 npm install ,这里感觉装依赖有点麻烦,不知道有没有办法打包的时候将用到的依赖一起打包 |
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK