Table of Contents
وقد أعاد تشكيل المحافظات بشكل أساسي تشكيل كيفية بناء المؤسسات وشحنها وتشغيلها، ووضع دوكر المعيار اللازم لبرمجيات التغليف في حاويات خفيفة الوزن، وحاويات محمولة، بينما يوفر برنامج " أوف سيفت " ، ومؤسسة " ريد هات " ، و " كبير " ، و " أدوات " المطور " ، التي تتيح إدارة عمليات التشغيل الآلي.
فهم دوكر والاحتفاظ
دوكر هو أكثر من مجرد أداة - هو منصة لتطوير وشحن وتشغيل التطبيقات داخل الحاويات - تُجمع الحاويات طلباً مع معاليها (الليارات، وملفات التشكيل، والملفات الثنائية) في وحدة موحدة واحدة، وهذا يضمن أن يكون الطلب دائماً عبر التنمية، والتدبير، وبيئات الإنتاج، والقضاء على مشكلة " يعمل على آلتي " التقليدية.
في قلب (دوكر) هو مهندس (دوكر) الذي يدير الحاويات على نظام تشغيل مضيف، يستخدم (دوكر) هيكلاً لخدمة العملاء حيث يتواصل عميل (دوكر) مع (دايمون) لبناء وركض وإدارة الحاويات، وهذه الصور التي تعرفها (دوكرفيلز) تستخدم كنموذجين مُحكمين يُطبقان على الكفاءة، عندما يبدأ العمل بنسخة سهلة.
وبالنسبة للمؤسسات، يوفر دوكر عدة قدرات حاسمة:
- Isolation:] Each container runs in its own isolated user space, improving security and resource control.
- Portability:] Containers run on any operating system that supports Docker, including Linux, Windows, and macOS, and in any environment (on-premises, cloud, hybrid).
- Efficiency:] Containers share the host operating system kernel, resulting in significantly lower overhead compared to virtual machines.
- Rapid iteration:] Developers can build, test, and deploy containerized applications quickly, supporting continuous integration and continuous delivery (CI/CD) workflows.
غير أن دوكر وحده لا يكفي لإدارة مئات أو آلاف الحاويات عبر مجموعة من الآلات، حيث يأتي التنصيب، ويوفر فتحة مفتوحة حلاً من نوعية المؤسسة يبنى على كوبرنيت.
OpenShift: Enterprise Kubernetes Platform
(الفتح هو توزيع (ريد هات) على (كوبرنيت) معززة بملامح إضافية تعالج احتياجات عمليات تكنولوجيا المعلومات، والمطورين، وأفرقة الأمن، بينما توفر (كوبرنيت) حاويات خنق طبقة الأساس، وتزيد من الانتشار، وتدير الربط الشبكي، وتخزن - أوبن سيفت، وتحتوي على أدوات ملائمة للمطورين، وقناة على شبكة الإنترنت، وقدرات على أجهزة كشف البيانات المدمجة/المعلومات الأساسية، وأجهزة الأمنية المعززة.
وتشمل العناصر الرئيسية للشبكة ما يلي:
- Source-to-Image (S2I): ] A tool that automatically builds container images from source code without requiring a Dockerfile, though it fully supports custom Dockerfiles as well.
- Integrated registry:] OpenShift includes an internal container image registry for storing and managing images, reducing reliance on external registries.
- Routing and networking:] OpenShift manages ingress traffic with a built-in HAProxy router and provides internal DNS and service discovery.
- Security context constraints (SCCs):] These replace Kubernetes Pod Security Policies, offering granular control over what containers can do (e.g., run as root, access host resources).
- Developer console:] A web UI that simplifies deployment, monitoring, and management of applications.
- OperatorHub:] a catalog of operators for automating complex application lifecycle management.
ويُصمم نظام فتح المشاريع بحيث يشترط وجود عدة فترات من الحمل والامتثال، وتوافرها على نحو كبير، وهو يدمج مع برنامج العمل الدولي، ودليل فعال، ومقدمي الهوية الآخرين، كما يوفر الرصد والقطع عن طريق بروميثيوس وغرافانا، والعقبات المطاطية/اللواء/كيبانا.
دمج (دوكر) مع (أف بي سيفت)
وباستخدام دوكر مع شركة أوف سيفت هو أمر مباشر لأن شركة أوف سيفت (PopShift) تُبنى على صور كوبيرنيت وهاتفها المحلي، ويحدث التكامل على عدة مستويات: صور البناء، وصور تخزين، ونشر أعباء العمل.
صور المباني
ويملك المطورون طريقتين رئيسيتين لخلق صور حاوية للفتح:
- Dockerfile builds:] Writ a Dockerfile, then use the OpenShift build system or the Docker CLI to build an image. OpenShift can run Docker builds inside the cluster using a build composition that references a Dockerfile. This method gives full control over the image layers.
- (دولف) (S2I): S2I) هو إطار يأخذ رمز المصدر التطبيقي ويحقنه في صورة أساسية تحتوي على الوقت المناسب، مثلاً، يمكن بناء جهاز تسجيل الصوت من خلال توجيه فتحة إلى مستودع للجيب؛
كلا النهجين ينتجان صوراً مخزنة في سجل حاويات داخلية أو خارجية سجل (أوف سيفت) المبني على بروتوكول (دوكر) ضد 2 لذا فهو متوافق تماماً مع عملاء (دوكر)
الصور المخزنة
وبعد البناء، تُدفع الصور إلى سجل يمكن أن تصل إليه مجموعة فتح، والسجل الداخلي هو أبسط خيار للنشر المتكامل بشكل صارم، ويمكن للفرق، كبديل لذلك، استخدام السجلات الخارجية مثل دوكر هوب، كواي.يو، أو أمين المظالم، أو سجل حاويات غوغل، ويمكن للفتح أن يسحب صورا من أي سجل يدعم بروتوكول الصور الموحدة لحاويات الحاويات.
نشر عبء العمل
وبمجرد توافر صورة، فإن نشرها على موقع " ويب " هو مسألة إنشاء مورد لشبكة كوبرنيت مثل النشر، أو " وحدة النشر " أو " البرمجية " أو " بود " ، أو " وحدة الإنترنت المفتوحة " أو " CLI " () " )، يبسط هذه العملية.
نشر حاوية دوكر على فتحة
لنمشي خلال دورة كاملة من النشر من كتابة "دوكرفيل" لكشف الطلب الخارجي
الخطوة 1: خلق صورة لدكر
أكتبي ملفاً لطلبكِ، إكرامب من أجل تطبيق (بيتون) على الإنترنت
FROM python:3.9-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY app.py .
EXPOSE 8080
CMD ["python", "app.py"]
بناء الصورة محلياً باستخدام
الخطوة 2: دفع إلى قلم المحكمة
اضغطي على الصورة لسجل (ابن سيفت) الداخلي أولاً، سجلي في السجل من عميلكِ (دوكر)
docker login -u $(oc whoami) -p $(oc whoami -t) default-route-openshift-image-registry.<cluster-domain>
ثمّ يَتّصلُ ويَدْفعُ:
docker tag my-python-app:1.0 default-route-openshift-image-registry.<cluster-domain>/<project-name>/my-python-app:1.0
docker push default-route-openshift-image-registry.<cluster-domain>/<project-name>/my-python-app:1.0
الخطوة 3: نشر النظام المفتوح
باستخدام الـ "كى لي"
oc new-app my-python-app:1.0 --name=my-app --as-deployment-config
أو إنشاء نشر يدوياً عبر YAML:
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
spec:
replicas: 3
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- image: default-route-openshift-image-registry.<cluster-domain>/<project>/my-python-app:1.0
name: my-app
ports:
- containerPort: 8080
Apply with ].
الخطوة 4: شرح الطلب
إنشاء دائرة وطريق لجعل التطبيق متاحاً خارجياً:
oc expose deployment my-app --port=8080
oc expose service my-app
الطريق يوفر شاحنات عامة، مُدرب (أوف سيفت) يُعالج الإنهاء و التوازن في الحمولة
الخطوة 5: رفع مستوى الإدارة
Scale the number of replicas dynamically:
oc scale deployment my-app --replicas=5
أو يُمكنُ التَخَيُّم بالسيارات باستخدام هوريزونتال بود أوتوكستر.
فوائد استخدام دوكر مع فتح
القابلية للتنقل والاتساق
صور (دوكر) مصنوعات غير قابلة للاشتعال تُسدّد البيئة المتعاقبة، عندما تُنشر على (أف بي سيفت)، تلك الصور تُدار بشكل متطابق سواء على حاسوب المطور أو مجموعة اختبار أو مركز بيانات إنتاجية، هذا الاتساق يزيل الاضطرابات الناجمة عن الانجراف البيئي ويُبسط الاضطرابات.
إدارة دورة الحياة الآلية
(أ) أن يُشغل العديد من المهام التنفيذية التي تُثقل كاهل (الدوكر الخام - التحديثات، ونشرات الكناري، والفحوصات الصحية، والتعافي الذاتي، مثلاً، إذا تحطمت الحاويات، فإن (ايف سيفت) يعيد تشغيلها تلقائياً، وإذا فشل عقد عقد عقدة، يعيد الجدول توزيع الحاويات على عقدات صحية.
أمن المشاريع
فالأمن هو الجوهر في بيئات المؤسسات، ويفرض نظام فتح الأبواب على الحاويات التي تخضع لقيود السياق الأمني المحدودة عن طريق التقصير، وهذا يعني أن الحاويات لا يمكن أن تكون جذورها أو تستخدم أماكن الإسم المضيفة أو تعد أدلة مضيفة حساسة إلا إذا سمح بذلك صراحة، كما أن نظام فتح الأبواب يدمج أدوات فحص الضعف للتحقق من الصور التي تستخدمها أجهزة التحقق المعروفة قبل نشرها، كما أن مراقبة الدخول القائمة على الأدوار تكفل للمطورين والمشغلين اللازمين والمراجعين.
Scalability
(السرقة المفتوحة) تضغط على الحشد الأفقي للسيارات وزيارة السيارات وربطها بالمجموعة يمكنك تحديد وحدة تحليل السلوك أو عتبات الذاكرة التي تحفز التصفية أو المقياس التلقائي
الإنتاجية المطورة
سمة (أف بي سيفت) من المصدر إلى الإمام تعجل التطور من خلال السماح للمطورين بضغط الرمز مباشرة إلى المجموعة دون كتابة (دوكريفليس) نظام البناء المتكامل يمكنه أن يُحدث بناءات و نشرات آليّة من (جيت)
أفضل الممارسات لنشر المؤسسات
التصوير والتوسيم
دائماً ما تستخدمين علامات محددة مستنسخة لصوركِ (دوكر) تجنباً لبطاقة الإنتاج لأنها تكسر القدرة على التكاثر، استخدمي الطباع الرملي أو الإثارة، فإمكانيات تيار الصور المفتوحة تتبع تغيرات البطاقات وتسبب عمليات النشر الآلي
السياسات الأمنية
تحديد مضيق الأمن الذي يطابق وضعكم الأمني، بدءاً من مركز الأمن الخاص المحدود، وفقط زيادة الامتيازات عند الضرورة، ودمج أجهزة المسح الضوئي للصور الحاوية مثل جهاز الأمن الجماعي المتقدم لكلير أو ريد هت لمسح الصور قبل نشرها، وكذلك تمكين سياسات الشبكة من حركة المرور على الشواطئ الصغرى بين الأقواس.
CI/CD Integration
(أ) بناء واختبارات ونشرات آلية باستخدام خطوط الخط (أبنت على تيكتون) أو جنكينز، خط أنابيب نموذجي: (1) يقوم المطور بدفع الرمز إلى غيت، (2) فتح الباب بصنع جهاز تسجيل الصوتي أو دوكر، (3) تُدفع الصورة الجديدة تلقائيا إلى السجل الداخلي، (4) يجري تحديث النشر، (5) التحقق من صحة النشر والتحقق تلقائيا من صحة النسخ الجديدة.
مثال على مورد خط أنابيب تيكتون الذي يبني من دوكرفيل:
apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
name: build-docker-image
spec:
workspaces:
- name: source
steps:
- name: build
image: gcr.io/kaniko-project/executor:latest
args:
- --context=$(workspaces.source.path)
- --destination=image-registry.openshift-image-registry.svc:5000/<project>/my-app:$(params.tag)
الرصد والتعبئة
(بروميثيوس) و (جرافانا) لجمع القياسات على وحدة العناية المركزة، الذاكرة، القرص الأول/الشبكة، استخدام الشبكة، إعداد تنبيهات للاستهلاك غير الطبيعي للموارد، فيما يتعلق بالسجلات، نشر مشغل النسيج المفتوح أو قطع الأشجار الأمامية إلى نظام معلوماتي خارجي
إدارة الموارد
وضع طلبات وحدود الموارد لكل حاوية، واستخدامات فتح فتح الأبواب لبرمجة الأعمدة بذكاء ومنع تجويع الموارد، وبدون حدود، يمكن لحاوية واحدة أن تستهلك جميع موارد العقد، مما يؤثر على أعباء العمل الأخرى.
resources:
requests:
memory: "256Mi"
cpu: "250m"
limits:
memory: "512Mi"
cpu: "500m"
الربط الشبكي والتخزين المستمر
(ب) استخدام مضخات (أوف سيفت) الثابتة المدعومة من فئة التخزين (مثلاً، (إن إف إس)، (سيف)، (أو إس إي بي إس) - نظارات تخزين مخزنية على النحو المناسب، من أجل التواصل، تشغيل طرق مفتوحة للحركة الخارجية لشبكة HTTP/S، وخدمات لموازنة الحمولة الداخلية.
الدعم والإنعاش بعد الكوارث
:: دعم تشكيلات البرمجيات المفتوحة (الطلقات السريعة) وبيانات البوليسترينات المكلورة بالصوت، ومحتويات سجل الصور، وتنفيذ بنية أساسية كأسلوب للمدونة باستخدام أدوات الجيب مثل الارتجاعي إلى استعادة البيئات بسرعة، وإجراء اختبارات لاسترداد الكوارث دوريا.
حالات الاستخدام الحقيقي في العالم
الخدمات البالغة الصغر
وكثيرا ما تخترق المؤسسات التي تستحدث تطبيقات احتكارية هذه التطبيقات خدمات صغيرة، وتستضيف حاويات دوكر كل خدمة بشكل مستقل، وتضع أوشيات أوف سيفت نظاما كاملا، وتدير اكتشاف الخدمات، وتوازن الحمولة، والاتصال فيما بين الخدمات.
النشرات الهجينة
(ب) تشغيل المفترق المفتوح على مقدمي السحب الرئيسيين (AWS, Azure, GCP) وعلى سطح الأرض ويمكن نشر صور دوكر في أي مكان من عمليات فتح، مما يتيح تجربة متسقة عبر البيئات الهجينة، وهذا أمر حاسم بالنسبة للمنظمات التي لديها متطلبات تتعلق بسيادة البيانات أو استراتيجيات متعددة الأماكن.
CI/CD for Machine Learning
ويمكن لأفرقة علوم البيانات أن تسحب نماذج بروميد الميثيل باستخدام دوكر وأن تنشرها في وظائف مفتوحة للحواسيب (عن طريق شركة أوف سيفت سيرفرليس/محلية)، مما يتيح استخدام نموذجي على نطاق واسع مع رفع مستوى التشغيل التلقائي إلى الصفر عندما لا يكون مستخدما.
خاتمة
(دكر) وشركة " أوف سيفت " معاً توفر منصة قوية وجاهزة للإنتاج في مجال تركيب الحاويات تلبي متطلبات المؤسسة في مجال تكنولوجيا المعلومات، وتقوم شركة دوكر بتقديم صور خفيفة الوزن، وصور محمولة يسهل بناؤها وصقلها، في حين تضيف شركة " أوف سيفت " (P OpenShift) إلى الخبرة اللازمة لإدارة تلك الصور على نطاق ضيق، وبات، وبات في مجال التشغيل، وبات التشغيل، وبات التشغيل، وبات التشغيل، يمكن للمنظمات أن تُحسنت تنفيذ البرامجياتها.
For more in-depth information, refer to the official documentation: Docker Docs], ]OpenShift Docs, and Red Hat OpenShift Product Page.]