rust使用shuttle部署项目后端
shuttle v0.10使用说明
安装或更新 shuttle
|
|
登录shuttle
|
|
初始化
|
|
部署
|
|
本地运行
|
|
报错解决(貌似只有windows才会必须使用1.65?)
error:
error: couldn’t read \?\x:...\target\debug\build\rustversion-…\out/version.expr: 文件名、目录名或卷标语法不正确。 (os error 123)
answer in discord:
You may need to do a cargo +1.65 build first, and then cargo +1.65 shuttle run for it to work on windows.
1.66 may work too. The + syntax is just to run a cargo command with a specific toolchain, if your default toolchain is that version you shouldn’t need it.
-
对项目使用指定rust版本,方式一(实际修改了.rustup/settings.toml)
- 在工程中执行: rustup override set 1.65
- 移除指定的版本: rustup override unset
-
方式二:
- 工程中创建: rust-toolchain.toml
- 添加内容:
1 2 3
[toolchain] channel = "1.65" # channel = "nightly"
-
方式三: 每次执行时添加+1.65
1 2 3 4 5 6
# 安装rust 1.65 rustup toolchain install 1.65 # 使用1.65重新安装cargo-shuttle (或者直接binstall[未测]) cargo +1.65 install cargo-shuttle --force cargo +1.65 build cargo +1.65 shuttle run
QA
- 不想git提交前端编译后的文件,导致部署失败
这是由于如果在.gitignore忽略了前端编译的文件那么shuttle也会忽略.
解决办法: https://discord.com/channels/803236282088161321/1072652298678960269/1075338035601879130
使用.ignore再设置为不忽略,这样git会忽略,shuttle不会忽略 - 遇到部署时卡住很久很久或爆500错误后再也无法部署
重启这个项目:1 2
cargo shuttle project rm cargo shuttle project new
- 原文作者:码魂
- 原文链接:http://blog.lazy.icu/2023/02/16/rust-shuttle/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. 进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。