Rust Web 全栈开发之发布
Rust Web 全栈开发之发布
发布
第一种方法: WebAssembly不可以
cargo build --workspace
第二种方法:分别对3个项目进行构建
构建 webservice
ws on main via 🦀 1.70.0 via 🅒 base
➜ cargo build --bin teacher-service --release
ws/target/release/teacher-service
构建 webapp
ws on main via 🦀 1.70.0 via 🅒 base took 41.8s
➜ cargo build --bin svr --release
ws/target/release/svr
创建发布文件夹并复制对应文件到当前目录
ws on main via 🦀 1.70.0 via 🅒 base took 12.1s
➜ mcd pub
ws/pub on main via 🦀 1.70.0 via 🅒 base
➜ ls
ws/pub on main via 🦀 1.70.0 via 🅒 base
➜ cp ../target/release/teacher-service ./
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜ ls
teacher-service
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜ cp ../target/release/svr ./
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜ ls
svr teacher-service
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜
临时设置环境变量并运行
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜ export DATABASE_URL=postgres://postgres:postgres@127.0.0.1:5432/postgres
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜ ./teacher-service
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜ export HOST_PORT=127.0.0.1:8080
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜ ./svr
Listening on: 127.0.0.1:8080
添加老师测试
测试成功
发布 WebAssembly 准备工作
- 删除 pkg 文件夹
- 删除 www 下的 dist 文件夹
构建 wasm-client
ws/wasm-client on main [?] is 📦 0.1.0 via 🦀 1.70.0 via 🅒 base
➜ wasm-pack build --release
构建 www
ws/wasm-client/www on main [?] is 📦 0.1.0 via ⬢ v19.7.0 via 🦀 1.70.0 via 🅒 base
➜ npm install
ws/wasm-client/www on main [?] is 📦 0.1.0 via ⬢ v19.7.0 via 🦀 1.70.0 via 🅒 base took 10.0s
➜ npm run build
复制 dist 文件夹到 pub 目录
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜ cp -R ../wasm-client/www/dist ./
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜ ls
dist svr teacher-service
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜
安装 http server
~ via 🅒 base
➜ npm install -g http-server
运行
ws/pub on main [?] via 🦀 1.70.0 via 🅒 base
➜ http-server ./dist -p 8081
Starting up http-server, serving ./dist
http-server version: 14.1.1
http-server settings:
CORS: disabled
Cache: 3600 seconds
Connection Timeout: 120 seconds
Directory Listings: visible
AutoIndex: visible
Serve GZIP Files: false
Serve Brotli Files: false
Default File Extension: none
Available on:
http://127.0.0.1:8081
http://192.168.0.100:8081
Hit CTRL-C to stop the server
测试删除
测试添加
本文来自博客园,作者:寻月隐君,转载请注明原文链接:https://www.cnblogs.com/QiaoPengjun/p/17456401.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2022-06-04 Go语言学习——结构体复习
2022-06-04 Go语言学习——结构体与JSON