Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature]: 轻量级的部署方式,适应serverless环境 #5502

Closed
ejfkdev opened this issue Mar 6, 2024 · 6 comments
Closed

[Feature]: 轻量级的部署方式,适应serverless环境 #5502

ejfkdev opened this issue Mar 6, 2024 · 6 comments
Assignees

Comments

@ejfkdev
Copy link

ejfkdev commented Mar 6, 2024

What problem does this feature solve?

前端静态页面+API,没有使用SSR,使用SSG编译dist产物几MB,因为用到了API功能,所以要使用modern serve启动web服务

希望部署到serverless服务,阿里云腾讯云等云函数平台

modern serve依赖@modern-js/app-tools,仅这一个包安装后代码包大小超过300MB,@modern-js/runtime包大约40MB,远远超出平台的部署限制

而且serverless规定必须使用0.0.0.0:9000启动,serve模式也需要能自定义绑定ip

What does the proposed API look like?

@zllkjc zllkjc self-assigned this Mar 6, 2024
@zllkjc
Copy link
Member

zllkjc commented Mar 7, 2024

我们正在规划这类轻量级的部署方案,后续会提供开箱即用的部署方式。

目前你可以直接通过 @modern-js/prod-server 这个包来运行你的产物代码,这是一个 Demo。
demo.zip

这个 Demo 中,除了你构建完的 Dist 文件后,你需要添加一个启动文件,并添加一个 package.json 文件。这里的依赖包括你服务端运行需要的依赖,通常是插件(Plugin BFF、Plugin Express),你用到的其他服务端依赖,以及 @modern-js/prod-server

@ejfkdev
Copy link
Author

ejfkdev commented Mar 8, 2024

我们正在规划这类轻量级的部署方案,后续会提供开箱即用的部署方式。

目前你可以直接通过 @modern-js/prod-server 这个包来运行你的产物代码,这是一个 Demo。 demo.zip

这个 Demo 中,除了你构建完的 Dist 文件后,你需要添加一个启动文件,并添加一个 package.json 文件。这里的依赖包括你服务端运行需要的依赖,通常是插件(Plugin BFF、Plugin Express),你用到的其他服务端依赖,以及 @modern-js/prod-server

npm安装完整个demo目录在90MB左右,基本可以用来部署了,如果能对server环境的代码也编译打包就更好了

@zllkjc
Copy link
Member

zllkjc commented Mar 10, 2024

嗯,目前 Modern.js 的服务端架构例如插件、BFF 都还不太方便对 server 环境编译打包。我们正在做服务端的重构,考虑到 worker 环境,也会关注这个事情。

@zllkjc
Copy link
Member

zllkjc commented Jul 9, 2024

我们已经完成了新的部署方案,可以试试看使用 Node 部署 https://modernjs.dev/guides/basic-features/deploy.html#nodejs。
Server 打包会作为我们下一个目标。

@zllkjc zllkjc closed this as completed Jul 9, 2024
@ejfkdev
Copy link
Author

ejfkdev commented Jul 10, 2024

我们已经完成了新的部署方案,可以试试看使用 Node 部署 https://modernjs.dev/guides/basic-features/deploy.html#nodejs。 Server 打包会作为我们下一个目标。

感谢,已经用上了,output只有十几M

@ejfkdev
Copy link
Author

ejfkdev commented Jul 10, 2024

我们已经完成了新的部署方案,可以试试看使用 Node 部署 https://modernjs.dev/guides/basic-features/deploy.html#nodejs。 Server 打包会作为我们下一个目标。

我用这个做飞书多维表的插件感觉挺好使的,前后端都能写,可以找飞书推广推广modern.js啊

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants