ubuntu

Ubuntu下Rust项目如何部署

小樊
39
2025-10-12 04:17:19
栏目: 编程语言

1. 准备Ubuntu环境
在Ubuntu上部署Rust项目前,需确保系统已安装Rust工具链(rustc编译器、Cargo包管理器)及必要依赖。推荐使用rustup(Rust官方工具链管理器)安装,步骤如下:

# 安装curl(若未安装)
sudo apt install curl
# 下载并运行rustup安装脚本
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# 按提示完成安装,重启终端或执行以下命令激活环境
source $HOME/.cargo/env
# 验证安装(显示Rust版本则成功)
rustc --version && cargo --version

若需配置国内镜像加速(如清华、中科大镜像),可修改~/.cargo/config.toml文件,添加以下内容:

[source.crates-io]
replace-with = 'ustc'  # 使用中科大镜像
[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index/"

此步骤可显著提升依赖下载速度。

2. 构建Rust项目
进入项目根目录(含Cargo.toml文件的目录),执行以下命令构建发布版本(优化性能,适合生产环境):

cargo build --release

构建完成后,可执行文件会生成在target/release/目录下(文件名与项目名称一致,如my_project)。
若需调试版本(包含符号信息,便于排查问题),可使用cargo build,生成的可执行文件位于target/debug/目录。

3. 部署可执行文件
target/release/下的可执行文件传输到目标Ubuntu服务器。常用工具为scp(安全拷贝),命令示例:

scp target/release/my_project user@your_server_ip:/path/to/deploy

其中,user为服务器用户名,your_server_ip为服务器IP地址,/path/to/deploy为目标路径(如/opt/my_rust_app)。

4. 配置服务器环境

5. 运行Rust项目
在服务器目标路径下,直接执行可执行文件:

cd /path/to/deploy
./my_project

若需后台运行(避免占用终端),可使用nohup命令:

nohup ./my_project > app.log 2>&1 &

此命令会将输出重定向到app.log文件,并在后台运行。

6. 使用systemd管理服务(可选,推荐)
为确保项目在服务器重启后自动启动,或在崩溃时自动重启,可使用systemd创建服务。步骤如下:

7. (可选)容器化部署(Docker)
若需跨平台部署或隔离环境,可使用Docker容器化Rust项目。步骤如下:

0
看了该问题的人还看了