当前位置: 首页 > news >正文

整个 AI 项目从本地 → 部署到服务器

一、整体流程(最清晰版)

本地打包镜像 → 上传到服务器 → 服务器加载镜像 → 挂载模型目录 → 启动容器 → 运行成功

二、完整部署步骤(照着执行即可)

1.本地:把你的 AI 项目打包成 Docker 镜像(cmd->项目根目录下执行)

根目录必须要有两个文件Dockerfile和requirements.txt

Dockerfile文件

FROM python:3.10-slim WORKDIR /app COPY requirements.txt . # 清理系统源 + 只使用阿里云 RUN rm -rf /etc/apt/sources.list.d/* && \ echo "deb http://mirrors.aliyun.com/debian bookworm main contrib non-free" > /etc/apt/sources.list && \ echo "deb http://mirrors.aliyun.com/debian-security bookworm-security main contrib non-free" >> /etc/apt/sources.list && \ echo "deb http://mirrors.aliyun.com/debian bookworm-updates main contrib non-free" >> /etc/apt/sources.list && \ apt-get update --fix-missing && \ apt-get install -y ffmpeg && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* # 安装 Python 依赖 RUN pip install --upgrade pip -i https://mirrors.aliyun.com/pypi/simple RUN pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple # 复制全部代码 COPY . . # 启动端口 EXPOSE 8001 # 启动命令(你自己项目的启动文件,一般是 app.py) CMD ["python", "app.py"]

requirements.txt文件

fastapi==0.135.2 uvicorn==0.42.0 pydantic==2.12.5 apscheduler==3.11.2 requests==2.32.5 urllib3==2.6.3 librosa==0.11.0 numpy==2.2.5 pydub==0.25.1 torch==2.5.0+cu124 scipy==1.15.3 soundfile==0.13.1 transformers==5.3.0 funasr==1.3.1 qwen-vl-utils==0.0.14 loguru==0.7.3

2.执行(创建镜像)

docker build --platform linux/amd64 -f Dockerfile -t ly-video-insight:1.0 .

3.下载镜像

docker save -o D:\ly-video-analysis.tar ly-video-analysis:1.1

4.上传到服务器

scp -r D:\夸克下载\vl-models\models\models ubuntu@192.168.9.34:/home/ubuntu/

5.进入Docker

sudo -i

6.docker加载镜像

docker load -i /home/ubuntu/ly-video-insight.tar

7.检查镜像

docker images

8.运行镜像

# 没有gpu运行 docker run --name ly-video-analysis -p 6006:6006 -v /home/ubuntu/models:/app/models -d ly-video-analysis:1.2 # gpu运行 docker run --name ly-video-analysis \ --gpus all \ -p 6006:6006 \ -v /home/ubuntu/models:/app/models \ -d ly-video-analysis:1.2

临时进入容器内部调试

docker run -it --entrypoint=/bin/bash -p 6006:6006 ly-video-analysis:1.3

调试好需要重新更新一下镜像

1.使用 `docker commit` 将容器转化为镜像

docker commit [容器ID或容器名称] [新镜像名称:标签] docker commit my_container my_backup_image:latest # 查看生成的镜像 docker images

2.使用 `docker save` 和 `docker load` 进行镜像迁移

docker save -o [保存路径] [镜像名称:标签] docker save -o /path/to/backup/my_backup_image.tar my_backup_image:latest 从文件恢复镜像 docker load -i [备份文件路径] docker load -i /path/to/backup/my_backup_image.tar

服务器没有Docker或者Docker没有GUP的解决方案

简单的安装Docker,不带GPU的

apt update apt install -y docker.io 重启Docker才会成功 systemctl restart docker

如果需要安装带GPU需要
1.清理所有错误的源和旧包

# 清理错误的 nvidia 源 rm -f /etc/apt/sources.list.d/nvidia-docker.list rm -f /etc/apt/sources.list.d/docker.list # 卸载冲突包 apt remove -y docker.io nvidia-docker2 nvidia-container-toolkit libnvidia-container1 apt autoremove -y

2.安装正确的 NVIDIA 容器工具包(现代版,无 apt-key 警告)

# 安装依赖 apt update apt install -y curl gpg # 添加正确的 GPG 密钥(新版方式) curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg # 添加正确的源(自动适配你的 Ubuntu 版本) curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

3.安装并配置容器工具包

apt update apt install -y nvidia-container-toolkit

4.配置 Docker 使用 NVIDIA 运行时

nvidia-ctk runtime configure --runtime=docker

5.重启 Docker(关键!)

systemctl restart docker

6.验证 GPU 是否可用(测试命令)

docker run --rm --gpus all nvidia/cuda:11.8.0-base-ubuntu22.04 nvidia-smi

出现显卡信息 = 成功

7.重新运行你的容器

docker run --name ly-video-analysis \ --gpus all \ -p 6006:6006 \ -v /home/ubuntu/models:/app/models \ -d ly-video-analysis:1.2
http://www.jsqmd.com/news/711930/

相关文章:

  • 工业级Cat-1导轨式DTU USR-DR154/DR152(口红DTU)技术规范、核心优势与标准化应用场景白皮书
  • 被低估的 .NET 开源项目:AngleSharp,优雅的 HTML 解析神器
  • 10 分钟让网页颜值翻倍(底层+手写+AI提示词)
  • MySQL如何防止通过权限提升攻击_严格控制SUPER权限分配范围
  • 5分钟极速部署NVIDIA Riva ASR语音识别服务
  • YOLO26桥梁缺陷识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+远程环境部署)
  • 初步了解安卓逆向
  • 2026甘肃亮化工程权威TOP5排行:兰州亮化工程/兰州亮化设计/兰州体育场亮化/兰州体育场泛光照明/兰州商业综合体亮化/选择指南 - 优质品牌商家
  • NDCG@k:推荐系统排序质量评估的核心指标
  • 苹果MacBook Neo与保时捷968 Club Sport:如何让便宜产品变酷炫,成市场新宠?
  • 2026年合肥留学机构测评,最好的口碑好中介如何选 - 速递信息
  • 宜宾宅心装饰2026技术解析:口碑背后的工艺与服务细节 - 优质品牌商家
  • YOLO26电梯内电动车识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+远程环境部署)
  • Portarium:轻量级本地服务可视化管理的Go语言实现
  • 2026年武汉留学中介机构前十解析,哪家科研服务口碑最好 - 速递信息
  • 2026年3月回收运动木地板品牌推荐,二手运动体育木地板回收/回收运动木地板,回收运动木地板服务联系电话 - 品牌推荐师
  • AI编程助手技术对比与实战应用指南
  • RoPE频谱放大与Transformer位置编码优化实践
  • 5分钟上手!无需API权限的Instagram数据爬虫工具实战指南
  • ncmdump终极指南:3分钟掌握NCM格式解密,解锁网易云音乐播放自由
  • 中位数【C语言】
  • 实际生产开发到底怎么用锁?单体本地锁/数据库锁/Redis分布式锁 真实场景
  • 深入浅出 16.1 例题(二叉树)P4715 P4913
  • 2026年香港留学推荐,学员满意度高的中介机构全面测评 - 速递信息
  • Linux入门】VMware安装CentOS 7超详细图文教程(附常见问题解决)
  • metaRTC8 成功适配 RTOS:开启 MCU/嵌入式实时音视频新时代
  • CUDA应用检查点技术:透明化GPU状态保存与恢复
  • 基于VirtualLab Fusion的微结构仿真设计与加工技术(光栅、超表面、蛾眼结构的仿真与加工技术)课程
  • 如何在雀魂对局中获得AI实时分析:Akagi麻将辅助工具完整指南
  • 多项式优化问题的低秩求解器技术比较与应用