تشغيل Milvus باستخدام Docker Compose (لينكس)
توضح هذه الصفحة كيفية تشغيل مثيل Milvus في Docker باستخدام Docker Compose.
المتطلبات المسبقة
- تثبيت Docker.
- تثبيت المكون الإضافي Docker Compose (الإصدار 2 أو أحدث) والتحقق منه باستخدام
docker compose version. تستخدم هذه الإرشادات الأمرdocker compose، وليس الأمر القديمdocker-composeV1. - تحقق من متطلبات الأجهزة والبرامج قبل التثبيت.
تثبيت 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.
قم بالوصول إلى حاوية
milvus-standalone.docker exec -it milvus-standalone bashأضف إعدادات إضافية لتجاوز الإعدادات الافتراضية. يفترض ما يلي أنك بحاجة إلى تجاوز الإعدادات الافتراضية لـ
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أعد تشغيل حاوية
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 لتخزين الكائنات. لاستخدام قائمة انتظار رسائل مختلفة أو توصيل تخزين كائنات / بيانات وصفية خارجية، انظر:
- قائمة انتظار الرسائل: Woodpecker (الافتراضي) · Pulsar · Kafka · RocksMQ
- تخزين الكائنات: MinIO (افتراضي) · AWS S3 · Azure Blob · GCP Cloud Storage · Aliyun OSS · Tencent COS · Huawei OBS · متوافق مع S3
- البيانات الوصفية: etcd
يتم تعطيل التخزين V3 افتراضيًا. قم بتمكينه قبل استخدام الميزات التي تعتمد عليه. للاطلاع على المتطلبات واعتبارات التوافق، راجع التخزين V3.
الخطوة التالية
بعد تثبيت Milvus في Docker، يمكنك:
راجع «البدء السريع » لمعرفة ما يمكن لـ Milvus القيام به.
تعلم العمليات الأساسية لـ Milvus:
نشر مجموعة Milvus الخاصة بك على السحابة:
استكشف Milvus WebUI، وهي واجهة ويب سهلة الاستخدام لمراقبة وإدارة Milvus.
اكتشف Milvus Backup، وهي أداة مفتوحة المصدر لنسخ بيانات Milvus احتياطيًا.
اكتشف Birdwatcher، وهي أداة مفتوحة المصدر لتصحيح أخطاء Milvus وتحديثات التكوين الديناميكية.
اكتشف Attu، وهي أداة واجهة مستخدم رسومية مفتوحة المصدر لإدارة Milvus بطريقة بديهية.