AgentCPM本地化部署指南:在Ubuntu服务器上完成环境配置与模型启动

张开发
2026/4/20 1:55:00 15 分钟阅读

分享文章

AgentCPM本地化部署指南:在Ubuntu服务器上完成环境配置与模型启动
AgentCPM本地化部署指南在Ubuntu服务器上完成环境配置与模型启动如果你正在为企业寻找一个能私有化部署、保障数据安全的智能体模型那么AgentCPM很可能就是你的目标。它功能强大但部署过程对不少朋友来说是个门槛。今天我就来手把手带你走一遍在Ubuntu服务器上从零开始把AgentCPM跑起来并且配置成开机自启动的服务让你彻底告别部署焦虑。整个过程我们会像搭积木一样一步步来先准备好Ubuntu这个“地基”然后拉取现成的“镜像盒子”接着把“模型大脑”放进去最后让它变成一个随开随用的“自动服务”。放心我会尽量用大白话把每一步讲清楚让你跟着做就能成功。1. 第一步打好地基——Ubuntu系统环境准备在开始安装AgentCPM之前我们需要确保服务器这个“房子”的基础设施是完备的。这主要包含两大部分Python环境和Docker环境。1.1 更新系统与安装基础工具首先用SSH连接到你的Ubuntu服务器。建议使用一个具有sudo权限的账户。第一件事是更新系统的软件包列表并升级已有的软件这能确保我们后续安装的都是较新的稳定版本。打开终端输入以下命令sudo apt update sudo apt upgrade -y这个过程可能会花几分钟取决于你的网络速度和系统更新量。完成后我们安装一些后续步骤可能需要的辅助工具比如用于下载文件的wget和curl以及管理软件包的software-properties-common。sudo apt install -y wget curl software-properties-common1.2 安装Python 3.8或更高版本AgentCPM的运行依赖Python。Ubuntu系统通常预装了Python 3但我们最好确认一下版本。运行python3 --version查看。如果版本低于3.8或者系统没有安装我们可以通过以下方式安装# 添加 deadsnakes PPA 以获取更多Python版本可选如果你的系统源里没有合适的版本 sudo add-apt-repository ppa:deadsnakes/ppa -y sudo apt update # 安装 Python 3.8 和 pip sudo apt install -y python3.8 python3.8-venv python3.8-dev python3-pip安装完成后可以设置一下默认的python3命令指向我们安装的版本如果系统有多个版本。不过更推荐的做法是在后续步骤中使用虚拟环境来隔离项目依赖。1.3 安装与配置DockerDocker是我们部署AI应用的神器它能将应用和所有依赖打包在一个容器里保证环境一致。安装Docker的官方步骤很清晰卸载旧版本如果有sudo apt remove docker docker-engine docker.io containerd runc安装依赖包允许apt通过HTTPS使用仓库sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release添加Docker的官方GPG密钥curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg设置稳定版仓库echo deb [arch$(dpkg --print-architecture) signed-by/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable | sudo tee /etc/apt/sources.list.d/docker.list /dev/null安装Docker引擎sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io验证安装是否成功sudo docker run hello-world如果看到“Hello from Docker!”等欢迎信息说明Docker已经安装并运行正常。可选但推荐将当前用户加入docker组这样以后运行docker命令就不需要每次都加sudo了sudo usermod -aG docker $USER重要执行此命令后你需要完全退出当前SSH会话并重新登录这个改动才会生效。2. 第二步获取核心——拉取与运行AgentCPM镜像环境准备好后我们就可以获取AgentCPM的“软件包”了。这里我们假设使用一个预置的Docker镜像它能省去大量手动配置依赖的麻烦。2.1 拉取预置的Docker镜像假设我们已经从可靠的镜像仓库例如某个镜像广场获得了AgentCPM的镜像名称和标签。拉取镜像的命令很简单docker pull [你的镜像仓库地址]/agentcpm:latest请将[你的镜像仓库地址]/agentcpm:latest替换为你实际获取到的镜像地址。例如它可能看起来像registry.example.com/ai-mirror/agentcpm:v1.0。拉取过程需要一些时间取决于镜像大小和你的网络速度。你可以通过docker images命令查看拉取到本地的镜像。2.2 准备模型权重与配置文件大型语言模型的核心是它的“权重”文件也就是训练好的参数。通常你需要从模型发布方指定的地方下载这些权重文件。创建一个专门的工作目录用于存放所有相关文件保持整洁mkdir -p ~/agentcpm_deploy cd ~/agentcpm_deploy在这个目录下创建用于存放模型权重的文件夹mkdir models将你下载好的AgentCPM模型权重文件通常是多个文件如pytorch_model.bin,config.json,tokenizer.json等放入~/agentcpm_deploy/models/目录下。你可以使用scp命令从本地电脑上传或者直接在服务器上使用wget下载如果有直链。你可能还需要一个配置文件来指定模型路径、服务端口等。在~/agentcpm_deploy/目录下创建一个简单的config.yaml或docker-compose.yml。这里以创建一个环境变量文件为例cat .env EOF MODEL_PATH/app/models SERVICE_PORT8000 # 可以添加其他环境变量如API_KEY等 EOF2.3 首次运行容器进行测试现在我们可以尝试运行容器看看一切是否正常。使用docker run命令并将本地的模型目录挂载到容器内部docker run -d \ --name agentcpm_test \ -p 8000:8000 \ -v $(pwd)/models:/app/models \ --env-file .env \ [你的镜像仓库地址]/agentcpm:latest命令解释-d后台运行容器。--name给容器起个名字方便管理。-p 8000:8000将宿主机的8000端口映射到容器的8000端口假设容器内服务运行在8000。-v $(pwd)/models:/app/models把刚才存放权重的本地目录挂载到容器内的/app/models路径。--env-file .env使用我们创建的环境变量文件。最后是镜像名。运行后使用docker logs -f agentcpm_test查看容器日志。如果看到服务成功启动、加载模型完毕、并开始监听端口的日志就说明初步成功了。你可以用curl测试一下API是否可用curl http://localhost:8000/v1/chat/completions \ -H Content-Type: application/json \ -d { model: agentcpm, messages: [{role: user, content: 你好}] }如果收到一个包含模型回复的JSON响应那么恭喜你核心服务已经跑通了测试完毕后可以停止并删除这个测试容器docker stop agentcpm_test docker rm agentcpm_test3. 第三步实现自动化——使用systemd配置服务自启动让服务在服务器重启后自动运行是生产环境的基本要求。在Ubuntu上我们可以用systemd这个系统服务管理器来实现。3.1 创建systemd服务单元文件我们需要创建一个.service文件来定义我们的AgentCPM服务。sudo nano /etc/systemd/system/agentcpm.service将以下内容粘贴进去请根据你的实际路径修改ExecStart中的镜像名、挂载路径和环境变量文件路径[Unit] DescriptionAgentCPM AI Service Afterdocker.service network-online.target Requiresdocker.service Wantsnetwork-online.target [Service] Typesimple Restartalways RestartSec10 ExecStart/usr/bin/docker run --rm \ --name agentcpm \ -p 8000:8000 \ -v /home/你的用户名/agentcpm_deploy/models:/app/models \ --env-file /home/你的用户名/agentcpm_deploy/.env \ [你的镜像仓库地址]/agentcpm:latest ExecStop/usr/bin/docker stop agentcpm # 如果以非root用户运行可能需要指定用户和组 # Useryour_username # Groupdocker [Install] WantedBymulti-user.target关键点说明After和Requires确保Docker服务先启动。Restartalways服务意外退出时自动重启。ExecStart定义启动容器的完整命令。--rm参数使得容器停止时自动清理如果你希望保留容器日志或状态可以去掉它并改用docker start和docker stop来管理已有容器。ExecStop定义停止服务时执行的命令。请务必将/home/你的用户名替换成你实际的用户主目录路径。编辑完成后按CtrlX然后按Y再按Enter保存退出。3.2 启用并启动服务创建好服务文件后需要让systemd重新加载配置然后启用开机自启并启动服务。重新加载systemd配置sudo systemctl daemon-reload启用服务使其开机自启动sudo systemctl enable agentcpm.service立即启动服务sudo systemctl start agentcpm.service检查服务状态看看是否运行正常sudo systemctl status agentcpm.service如果看到绿色的active (running)字样并且下面没有红色的错误日志就表示服务启动成功了。你也可以用docker ps命令确认容器是否在运行。3.3 管理服务与查看日志服务化之后管理起来就非常方便了停止服务sudo systemctl stop agentcpm重启服务sudo systemctl restart agentcpm禁用开机自启sudo systemctl disable agentcpm查看实时日志sudo journalctl -u agentcpm -f按CtrlC退出4. 第四步检查与验证部署完成后我们做一次完整的验收。检查服务状态再次运行sudo systemctl status agentcpm确保状态正常。检查容器运行运行docker ps应该能看到一个名为agentcpm的容器正在运行。功能测试再次使用curl命令如第二步的测试向http://localhost:8000发送请求确认API能够正常返回智能回复。重启测试可选但重要为了彻底验证自启动是否生效你可以重启服务器sudo reboot。等待几分钟后重新SSH连接然后直接运行docker ps或sudo systemctl status agentcpm看看服务是否已经自动运行起来了。走到这一步你的Ubuntu服务器上就已经拥有了一个稳定运行、开机自启的AgentCPM智能体服务了。整个过程从系统准备到服务化虽然步骤不少但每一步都有其作用。对于企业私有化部署来说数据完全掌握在自己手中安全性得到了保障后续也可以在此基础上进行二次开发或集成到内部系统中。部署过程中最可能出问题的地方通常是环境依赖、路径配置和权限。如果遇到问题多查看sudo journalctl -u agentcpm和docker logs agentcpm这两个地方的日志大部分错误信息都会在这里找到线索。希望这份指南能帮你顺利搭建起属于自己的AI能力底座。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

更多文章