paddlex3.0.1-ocr服务化安装部署(docker)

安装

参考官方文档来获取PaddleX镜像:基于Docker获取PaddleX

根据官方文档拉取相应版本的镜像:cpu和gpu版本。

当您使用官方 Docker 镜像安装时,其中已经内置了 PaddlePaddle、PaddleX(包括wheel包和所有插件),并配置好了相应的CUDA环境,您获取 Docker 镜像并启动容器即可开始使用。
请注意,PaddleX 官方 Docker 镜像与飞桨框架官方 Docker 镜像不同,后者并没有预装 PaddleX。

拉取CPU版本镜像

shell 复制代码
# 拉取cpu版本:PaddleX 官方 Docker 镜像预置了基础功能所需的全部依赖
docker pull ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlex/paddlex:paddlex3.0.1-paddlepaddle3.0.0-cpu

构建所需依赖镜像【OCR】

参考官方文档,选择性安装自己需要的依赖即可。

PaddleX 官方 Docker 镜像预置了基础功能所需的全部依赖;使用上文介绍的 pip install "...[base]" 的安装方式也将安装基础功能需要的所有依赖。如果您只专注于 PaddleX 的某一项功能,且希望保持安装的依赖的体积尽可能小,可以通过指定"依赖组"的方式,选择性地安装依赖:

shell 复制代码
# 以仅安装 OCR 类基础功能为例
# 安装预编译的 wheel 包
pip install "paddlex[ocr]"
# 从源码安装
pip install -e ".[ocr]"
# 也可以同时指定多个依赖组
pip install -e ".[ocr,cv]"

方式一:编写DockerFile文件并使用docker build构建镜像

  • 编写Dockerfile文件
Dockerfile 复制代码
FROM ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlex/paddlex:paddlex3.0.1-paddlepaddle3.0.0-cpu
# 安装serving
RUN paddlex --install serving
# 选择性地安装依赖,安装自己需要的即可
RUN pip install "paddlex[ocr]"
# 端口暴露
EXPOSE 8869

# 通过磁盘映射相关模型文件,改为在启动镜像时指定需要启动的服务。
# CMD ["/bin/bash","-c","paddlex --serve --pipeline OCR"]
  • 构建镜像
shell 复制代码
docker buildx build --load -t paddlex-ocr-cpu:3.0.1 .

方式二:直接运行容器并进入容器安装相关依赖后使用docker commit保存为新镜像

shell 复制代码
# 使用 PaddleX 官方 Docker 镜像,创建一个名为 paddlex 的容器,并将当前工作目录映射到容器内的 /paddle 目录
docker run --name paddlex -v $PWD:/paddle --shm-size=8g --network=host -it ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlex/paddlex:paddlex3.1.2-paddlepaddle3.0.0-cpu /bin/bash

# 安装服务化
paddlex --install serving

# 安装所需依赖
pip install "paddlex[ocr]"

# 退出容器保存正在运行的容器为新的镜像
docker commit paddlex paddlex-ocr-cpu:3.0.1

编写docker-compose文件

我个人不喜欢写docker run一长串命令,喜欢搞个docker-compose文件来跑服务。

看个人喜好选择。

yaml 复制代码
version: '3.7'
services:
  paddlex-ocr:
    image: paddlex-ocr-cpu:3.0.1
    container_name: paddlex-ocr 
    ports:
      - "8869:8869"
    shm_size: 8g
    restart: unless-stopped
    # 指定需要启动的服务OCR ,端口自己定义就行,默认是8869
    command: paddlex --serve --pipeline OCR --port 8869

然后就可以 运行容器调用服务啦~~~

shell 复制代码
docker-compose up -d
相关推荐
大佐不会说日语~13 分钟前
使用Docker Compose 部署时网络冲突问题排查与解决
运维·网络·spring boot·docker·容器
小徐敲java2 小时前
(运维)1Panel服务器面板Docker部署
运维·服务器·docker
一个无名的炼丹师2 小时前
多模态RAG系统进阶:从零掌握olmOCR与MinerU的部署与应用
python·大模型·ocr·多模态·rag
曾几何时`4 小时前
Docker容器化部署编译运行模块
运维·docker·容器
SmartBrain5 小时前
OCR 模型在医疗场景的选型研究
人工智能·算法·语言模型·架构·aigc·ocr
直饮水观察哨5 小时前
商用净水器亲测对比,哪个更专业?
容器
Suchadar6 小时前
Docker基础命令(二)——数据卷管理端口映射与容器互联
运维·docker·容器
firstacui6 小时前
Docker容器网络管理与容器数据卷管理
运维·docker·容器
codeRichLife8 小时前
docker拷贝,导入/导出等常用命令
docker
努力搬砖的咸鱼8 小时前
部署你的第一个应用到 K8s
微服务·云原生·容器·kubernetes