From 912e7876435d105fea19382ec5025c131e226774 Mon Sep 17 00:00:00 2001 From: LeviWeiPower <3044194967@qq.com> Date: Tue, 5 Aug 2025 00:01:22 +0800 Subject: [PATCH] support docker-compose support docker-compose --- docker/docker-compose.yml | 40 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 docker/docker-compose.yml diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml new file mode 100644 index 0000000..249f2bc --- /dev/null +++ b/docker/docker-compose.yml @@ -0,0 +1,40 @@ +version: '3.8' + +services: + dots-ocr-server: + image: dots-ocr:20250801 + container_name: dots-ocr-container + ports: + - "8001:8000" + volumes: + - /app/data/gpt/source-model/dots.ocr:/workspace/weights/DotsOCR + environment: + - CUDA_VISIBLE_DEVICES=0 + - PYTHONPATH=/workspace/weights:$PYTHONPATH + deploy: + resources: + reservations: + devices: + - capabilities: [gpu] + device_ids: ['0'] + entrypoint: /bin/bash + command: + - -c + - | + set -ex; + echo '--- Starting setup and server ---'; + echo 'Modifying vllm entrypoint...'; + # This sed command patches the vllm entrypoint script to import the custom modeling code. + sed -i '/^from vllm\.entrypoints\.cli\.main import main/a from DotsOCR import modeling_dots_ocr_vllm' $(which vllm) && \ + echo 'vllm script after patch:'; + # Show the patched part of the vllm script for verification. + grep -A 1 'from vllm.entrypoints.cli.main import main' $(which vllm) && \ + echo 'Starting server...'; + # Use 'exec' to replace the current shell process with the vllm server, + # ensuring logs are properly forwarded to Docker's standard output. + exec vllm serve /workspace/weights/DotsOCR \ + --tensor-parallel-size 1 \ + --gpu-memory-utilization 0.8 \ + --chat-template-content-format string \ + --served-model-name dotsocr-model \ + --trust-remote-code