تشغيل Milvus باستخدام Docker Compose (لينكس)

توضح هذه الصفحة كيفية تشغيل مثيل Milvus في Docker باستخدام Docker Compose.

المتطلبات المسبقة

تثبيت Milvus

يوفر Milvus ملف تكوين Docker Compose في مستودع Milvus. قم بتنزيل ملف التكوين الخاص بالإصدار v3.0.3 وابدأ عملية نشر جديدة:

# Download the configuration file
$ wget https://github.com/milvus-io/milvus/releases/download/v3.0.3/milvus-standalone-docker-compose.yaml -O docker-compose.yaml

# Start Milvus
$ sudo docker compose up -d

Creating milvus-etcd  ... done
Creating milvus-minio ... done
Creating milvus-standalone ... done

النشر الافتراضي (الإصدار 3.0.3): docker compose up -d يبدأ تشغيل ثلاث حاويات طويلة الأمد — milvus-etcd (البيانات الوصفية)، و milvus-minio (تخزين الكائنات)، و milvus-standalone. قائمة انتظار الرسائل هي Woodpecker (مدمجة، مع MinIO / تخزين الكائنات كخلفية WAL لها)، لذا لا يلزم وجود حاوية منفصلة لقائمة انتظار الرسائل.

كما يقوم التكوين بتشغيل خدمة « milvus-volume-init » لمرة واحدة لإعداد ملكية دليل البيانات. ويُغلق بعد إتمام تلك المهمة.

قائمة انتظار الرسائل الافتراضية حسب الإصدار:

  • 2.5.x — قائمة انتظار الرسائل الافتراضية هي RocksMQ.
  • 2.6.x والإصدارات الأحدث — قائمة انتظار الرسائل الافتراضية هي Woodpecker (مضمنة).

استخدم التكوين المرفق بالإصدار الذي تنوي تثبيته. بالنسبة للنشر الحالي، اتبع إرشادات الترقية بدلاً من استبدال تكوينه بملف تثبيت جديد.

  • إذا كان docker compose غير متاح، فقم بتثبيت المكون الإضافي Compose باستخدام إرشادات Docker.

  • إذا واجهت أي مشكلات في سحب الصورة، فاتصل بنا على community@zilliz.com مع تفاصيل حول المشكلة، وسنقدم لك الدعم اللازم.

بعد بدء تشغيل Milvus،

  • تكون الحاويات المسماة milvus-standalone و milvus-minio و milvus-etcd قيد التشغيل.
    • لا تكشف حاوية milvus-etcd عن أي منافذ للمضيف وتقوم بتعيين بياناتها إلى volumes/etcd في المجلد الحالي.
    • تقدم حاوية milvus-minio المنافذ 9000 و9001 محليًا باستخدام بيانات اعتماد المصادقة الافتراضية وتقوم بتعيين بياناتها إلى volumes/minio في المجلد الحالي.
    • تقدم حاوية milvus-standalone المنافذ 19530 محليًّا باستخدام الإعدادات الافتراضية وتقوم بتعيين بياناتها إلى volumes/milvus في المجلد الحالي.

يمكنك التحقق مما إذا كانت الحاويات قيد التشغيل باستخدام الأمر التالي:

$ docker compose ps

NAME                IMAGE   COMMAND                  SERVICE      CREATED         STATUS                   PORTS
milvus-etcd         …       "etcd -advertise-cli…"   etcd         2 minutes ago   Up 2 minutes (healthy)   2379-2380/tcp
milvus-minio        …       "/usr/bin/docker-ent…"   minio        2 minutes ago   Up 2 minutes (healthy)   9000-9001/tcp
milvus-standalone   …       "/tini -- milvus run…"   standalone   2 minutes ago   Up 2 minutes (healthy)   0.0.0.0:9091->9091/tcp, 0.0.0.0:19530->19530/tcp

يمكنك أيضًا الوصول إلى واجهة المستخدم على الويب لـ Milvus على http://127.0.0.1:9091/webui/ لمعرفة المزيد عن مثيل Milvus الخاص بك. لمزيد من التفاصيل، راجع واجهة المستخدم على الويب ل ـ Milvus.

لتجربة الخادم قيد التشغيل، اتبع مسار «استخدام خادم Milvus موجود» في «البدء السريع» وقم بالاتصال بـ http://localhost:19530. لا تستخدم كتلة الاتصال المحلية .db ، التي تبدأ قاعدة بيانات Milvus Lite منفصلة.

(اختياري) تحديث تكوينات Milvus

لتحديث تكوين Milvus ليناسب احتياجاتك، تحتاج إلى تعديل ملف /milvus/configs/user.yaml الموجود داخل الحاوية milvus-standalone.

  1. قم بالوصول إلى حاوية milvus-standalone.

    docker exec -it milvus-standalone bash
    
  2. أضف إعدادات إضافية لتجاوز الإعدادات الافتراضية. يفترض ما يلي أنك بحاجة إلى تجاوز الإعدادات الافتراضية لـ proxy.healthCheckTimeout. للاطلاع على عناصر التكوين القابلة للتطبيق، راجع تكوين النظام.

    cat << EOF > /milvus/configs/user.yaml
    # Extra config to override default milvus.yaml
    proxy:
      healthCheckTimeout: 1000 # ms, the interval that to do component healthy check
    EOF
    
  3. أعد تشغيل حاوية milvus-standalone لتطبيق التغييرات.

    docker restart milvus-standalone
    

إيقاف وحذف Milvus

يمكنك إيقاف هذا الحاوية وحذفها على النحو التالي

# Stop Milvus
$ sudo docker compose down

# Delete service data
$ sudo rm -rf volumes

ترقية نشر موجود

بالنسبة لنشر Milvus 2.6.x المستقل، اتبع إرشادات «ترقية Milvus المستقل باستخدام Docker Compose». قم بعمل نسخة احتياطية من البيانات الوصفية والبيانات الدائمة، واحتفظ بالتبعيات والتكوينات الحالية، وتحقق من صحة مسار الترقية الموثق من المصدر إلى الهدف قبل تغيير صورة Milvus. لا تستبدل ملف Compose الخاص بالنشر الأقدم بتكوين التثبيت الجديد المذكور أعلاه.

قيود قائمة انتظار الرسائل: عند الترقية إلى Milvus v3.0.3، يجب الحفاظ على اختيارك الحالي لقائمة انتظار الرسائل. لا يُدعم التبديل بين أنظمة قوائم انتظار الرسائل المختلفة أثناء الترقية. سيتوفر دعم تغيير أنظمة قوائم انتظار الرسائل في الإصدارات المستقبلية.

يتم تعيين Woodpecker افتراضيًا في Milvus 2.6.x والإصدارات الأحدث، بينما يتم تعيين RocksMQ افتراضيًا في عمليات النشر 2.5.x. إذا كانت عملية النشر التي تقوم بترقيتها لا تزال تعمل باستخدام RocksMQ، فقم بتثبيتها في « user.yaml » قبل تغيير صورة Milvus، حتى تحتفظ المثيل الذي تمت ترقيته بقائمة انتظار الرسائل الحالية بدلاً من البدء بالإعداد الافتراضي الجديد:

# user.yaml — keep RocksMQ across the upgrade
mq:
  type: rocksmq

بعد أن يبدأ تشغيل المثيل الذي تمت ترقيته على الإصدار v3.0.3، يمكنك الانتقال من RocksMQ إلى Woodpecker باستخدام ميزة «تبديل قائمة انتظار الرسائل» (Switch Message Queue)، المتوفرة في Milvus 3.0 والإصدارات الأحدث.

التبعيات الاختيارية

يعمل هذا النشر على Woodpecker (مدمج، خلفية MinIO WAL) للمراسلة، وetcd للبيانات الوصفية، وMinIO لتخزين الكائنات. لاستخدام قائمة انتظار رسائل مختلفة أو توصيل تخزين كائنات / بيانات وصفية خارجية، انظر:

يتم تعطيل التخزين V3 افتراضيًا. قم بتمكينه قبل استخدام الميزات التي تعتمد عليه. للاطلاع على المتطلبات واعتبارات التوافق، راجع التخزين V3.

الخطوة التالية

بعد تثبيت Milvus في Docker، يمكنك:

ترجمة بواسطةDeepL

Office Hours

ساعات عمل مكتب ميلفوس

احصل على المساعدة في نشر الإنتاج من Zilliz، الخبراء في ميلفوس.

احجز جلسة مجانية 1:1

جرب Managed Milvus مجاناً

Zilliz Cloud خالي من المتاعب، ويعمل بواسطة Milvus ويعمل بسرعة 10 أضعاف.

ابدأ
التعليقات

هل كانت هذه الصفحة مفيدة؟