在CentOS系统部署Rust项目可参考以下步骤:
-
安装Rust环境
使用rustup安装Rust工具链:curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source $HOME/.cargo/env rustc --version # 验证安装 -
构建Rust项目
进入项目目录,执行cargo build --release生成优化后的可执行文件,位于target/release/目录。 -
直接运行(简单场景)
将可执行文件复制到服务器,通过scp传输后直接运行:scp target/release/your_app user@server_ip:/path/to/deploy ssh user@server_ip ./your_app -
配置为系统服务(推荐)
- 创建
systemd服务文件(如/etc/systemd/system/your_app.service):[Unit] Description=Rust Application After=network.target [Service] User=your_user ExecStart=/path/to/your_app/target/release/your_app Restart=always [Install] WantedBy=multi-user.target - 启用并启动服务:
sudo systemctl daemon-reload sudo systemctl start your_app sudo systemctl enable your_app
- 创建
-
可选:使用Docker容器化部署
- 创建
Dockerfile:FROM rust:latest as builder WORKDIR /usr/src/app COPY . . RUN cargo build --release FROM debian:buster-slim COPY --from=builder /usr/src/app/target/release/your_app /usr/local/bin/your_app ENTRYPOINT ["your_app"] - 构建并运行容器:
docker build -t your_app . docker run -d -p 8080:8080 your_app
- 创建
-
配置防火墙与网络(如需远程访问)
sudo firewall-cmd --add-port=8080/tcp --permanent sudo firewall-cmd --reload
说明:
- 简单场景可直接运行可执行文件,生产环境建议使用
systemd或Docker管理。 - 若需打包为RPM/DEB包,可参考
cargo deb/cargo rpm工具。 - 确保服务器已安装项目依赖的库(如通过
yum安装系统级依赖)。