在 Ubuntu 上部署 C++ 项目,一般包括 编译、安装依赖、运行环境配置、部署上线 等步骤。下面按常见场景给你一个完整、可操作的流程。
sudo apt update
sudo apt upgrade -y
sudo apt install -y build-essential
包含:
gcc / g++makesudo apt install -y \
libssl-dev \
libcurl4-openssl-dev \
libboost-all-dev \
cmake
根据你的项目
README或CMakeLists.txt安装对应依赖。
make
或指定线程数加速:
make -j$(nproc)
mkdir build
cd build
cmake ..
make -j$(nproc)
安装到系统目录(可选):
sudo make install
g++ main.cpp utils.cpp -o app -std=c++17 -O2
./app
如果是服务类程序,建议后台运行:
nohup ./app > app.log 2>&1 &
假设可执行文件在:
/opt/myapp/app
创建服务文件:
sudo vim /etc/systemd/system/myapp.service
内容示例:
[Unit]
Description=My C++ App
After=network.target
[Service]
ExecStart=/opt/myapp/app
WorkingDirectory=/opt/myapp
Restart=always
User=ubuntu
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start myapp
sudo systemctl enable myapp
查看状态:
systemctl status myapp
cmake -DCMAKE_BUILD_TYPE=Release ..
g++ main.cpp -o app -static
FROM ubuntu:22.04
COPY app /app
CMD ["/app"]
查看依赖:
ldd app
chmod +x app
sudo netstat -tulnp | grep 8080
/opt/myapp/
├── app
├── config.yaml
├── logs/
└── run.sh
# 安装环境
sudo apt install build-essential cmake
# 编译
mkdir build && cd build
cmake ..
make
# 运行
./app
# 部署为服务
sudo systemctl enable myapp
如果你愿意,可以告诉我:
我可以给你 定制部署方案。