hsukqilee commited on
Commit
deef8e2
·
verified ·
1 Parent(s): e2bf14d

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +62 -1
Dockerfile CHANGED
@@ -1 +1,62 @@
1
- FROM ghcr.io/hsukqilee/paddleocrapi/paddleocrfastapi:sha-30aeacd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # 使用 Python 3.8 slim 基础镜像
2
+ FROM python:3.8-slim-bullseye
3
+
4
+ # 暴露端口
5
+ EXPOSE 7860
6
+
7
+ # 换源并安装系统依赖
8
+ RUN apt-get update && \
9
+ apt-get install -y --no-install-recommends \
10
+ wget \
11
+ libgl1 \
12
+ libgomp1 \
13
+ libglib2.0-0 \
14
+ libsm6 \
15
+ libxrender1 \
16
+ libxext6 && \
17
+ apt-get clean && \
18
+ rm -rf /var/lib/apt/lists/*
19
+
20
+ # 下载模型文件
21
+ WORKDIR /app/pp-ocrv4
22
+ RUN wget https://paddleocr.bj.bcebos.com/PP-OCRv4/chinese/ch_PP-OCRv4_det_infer.tar
23
+ RUN wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_cls_infer.tar
24
+ RUN wget https://paddleocr.bj.bcebos.com/PP-OCRv4/chinese/ch_PP-OCRv4_rec_infer.tar
25
+
26
+ # 设置工作目录
27
+ WORKDIR /app
28
+
29
+ # 复制依赖文件并安装系统依赖
30
+ COPY requirements.txt /app/requirements.txt
31
+
32
+ # 换源并安装 Python 依赖
33
+ RUN python3 -m pip install --upgrade pip && \
34
+ pip3 install --no-cache-dir -r requirements.txt
35
+
36
+ # 复制项目文件
37
+ COPY . /app
38
+
39
+ # 创建模型目录并解压模型文件
40
+ # RUN mkdir -p /root/.paddleocr/whl/cls/ && \
41
+ # mkdir -p /root/.paddleocr/whl/det/ch/ && \
42
+ # mkdir -p /root/.paddleocr/whl/rec/ch/ && \
43
+ # tar xf /app/pp-ocrv4/ch_ppocr_mobile_v2.0_cls_infer.tar -C /root/.paddleocr/whl/cls/ 2>/dev/null && \
44
+ # tar xf /app/pp-ocrv4/ch_PP-OCRv4_det_infer.tar -C /root/.paddleocr/whl/det/ch/ && \
45
+ # tar xf /app/pp-ocrv4/ch_PP-OCRv4_rec_infer.tar -C /root/.paddleocr/whl/rec/ch/ && \
46
+ # rm -rf /app/pp-ocrv4/*.tar
47
+
48
+ RUN mkdir -p /app/models/det /app/models/rec /app/models/cls \
49
+ && chmod -R 777 /app/models \
50
+ && cp /app/pp-ocrv4/ch_ppocr_mobile_v2.0_cls_infer.tar /app/models/cls/ 2>/dev/null || true \
51
+ && cp /app/pp-ocrv4/ch_PP-OCRv4_det_infer.tar /app/models/det/ 2>/dev/null || true \
52
+ && cp /app/pp-ocrv4/ch_PP-OCRv4_rec_infer.tar /app/models/rec/ 2>/dev/null || true
53
+
54
+ # 解压模型文件
55
+ RUN tar xf /app/models/cls/ch_ppocr_mobile_v2.0_cls_infer.tar -C /app/models/cls/ 2>/dev/null || true \
56
+ && tar xf /app/models/det/ch_PP-OCRv4_det_infer.tar -C /app/models/det/ 2>/dev/null || true \
57
+ && tar xf /app/models/rec/ch_PP-OCRv4_rec_infer.tar -C /app/models/rec/ 2>/dev/null || true \
58
+ && rm -rf /app/models/*/*.tar 2>/dev/null || true
59
+
60
+
61
+ # 启动命令
62
+ CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860", "--workers", "2", "--log-config", "./log_conf.yaml"]