阅读量:2
1. 安装Rust工具链
在Ubuntu上部署Rust项目前,需先安装Rust编译器(rustc)和包管理器(Cargo)。推荐使用rustup(Rust官方工具链管理器)安装:
- 打开终端,运行以下命令下载并执行安装脚本(选择默认配置,即输入
1确认):curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - 安装完成后,激活环境变量(若未自动激活):
source $HOME/.cargo/env - 验证安装是否成功:
rustc --version # 查看Rust编译器版本 cargo --version # 查看Cargo版本 - (可选)配置国内镜像源:若下载依赖慢,可修改
~/.cargo/config.toml文件,使用国内镜像(如清华、中科大):[source.crates-io] replace-with = 'ustc' # 替换为国内镜像源名称 [source.ustc] registry = "git://mirrors.ustc.edu.cn/crates.io-index" # 国内镜像源地址
2. 构建Rust项目
进入项目目录(如/path/to/your/rust-project),使用Cargo构建项目:
- 开发模式构建(生成未优化的可执行文件,用于调试):
可执行文件位于cargo buildtarget/debug/目录下,文件名为项目名称(如your_project)。 - 发布模式构建(生成优化的可执行文件,用于生产部署,体积更小、性能更高):
可执行文件位于cargo build --releasetarget/release/目录下,文件名同项目名称。
3. 部署到Ubuntu服务器
将构建好的可执行文件复制到目标服务器(如user@your_server_ip:/path/to/deploy):
- 使用
scp命令(本地终端执行):scp target/release/your_project user@your_server_ip:/opt/your_project # 复制到服务器/opt目录 - 登录服务器,进入部署目录:
ssh user@your_server_ip cd /opt/your_project
4. 配置服务器环境
- 安装系统依赖:若项目依赖外部库(如
openssl、libpq),需提前安装对应开发包(以libssl-dev为例):sudo apt update sudo apt install libssl-dev # 根据项目需求调整依赖包 - 设置可执行权限:为可执行文件添加运行权限:
chmod +x your_project
5. 运行Rust项目
- 直接运行(临时测试):
./your_project - 后台运行(nohup):避免终端关闭后进程终止:
日志输出到nohup ./your_project > output.log 2>&1 &output.log文件,可通过tail -f output.log查看实时日志。 - 使用systemd服务(推荐):实现开机自启、崩溃自动重启:
- 创建服务文件(如
your_project.service):sudo nano /etc/systemd/system/your_project.service - 添加以下内容(替换路径和用户):
[Unit] Description=Your Rust Project After=network.target [Service] User=ubuntu # 替换为运行服务的用户(如ubuntu、root) WorkingDirectory=/opt/your_project # 项目目录 ExecStart=/opt/your_project/your_project # 可执行文件路径 Restart=always # 崩溃时自动重启 [Install] WantedBy=multi-user.target - 保存并退出(
Ctrl+O→Enter→Ctrl+X),重新加载systemd配置:sudo systemctl daemon-reload - 启动服务:
sudo systemctl start your_project - 设置开机自启:
sudo systemctl enable your_project - 查看服务状态(确认是否运行):
sudo systemctl status your_project
- 创建服务文件(如
注意事项
- 若项目依赖特定硬件(如GPU),需确保服务器安装对应驱动(如NVIDIA CUDA)。
- 发布模式下构建的可执行文件无需额外依赖(静态链接),更适合生产环境部署。
- 若项目使用数据库(如PostgreSQL),需提前安装并配置数据库服务,确保项目能连接数据库。
以上就是关于“Rust项目Ubuntu如何部署”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm