استخدام حاويات Docker مع WordPress
نشرت: 2022-06-30يمكن أن يتضمن تشغيل مواقع WordPress على الويب استخدام عدد كبير من التكوينات وتبعيات البرامج لإنتاج منتجات عالية الجودة. ربما تساءلت عما إذا كانت هناك طريقة أسهل لتطوير هذه الأنواع من المشاريع محليًا دون تشغيل العديد من حزم البرامج المختلفة على جهازك الخاص.
لحسن الحظ ، Docker هو منتج يقدم حلاً لإعداد WordPress أسرع وأكثر سلاسة. أكثر من مجرد آلة افتراضية ، يوفر Docker حاويات لتطوير مواقع WordPress بالإضافة إلى التطبيقات والبرامج الأخرى. يمكن أن يساعدك Docker أيضًا في إعداد التطبيقات للشحن إلى منصات أخرى بسهولة ، مما يبسط سير عملك.
في هذه المقالة ، سوف نلقي نظرة على ماهية الحاويات بالضبط وكيف تؤثر على التنمية. ثم سنتعرف على كيفية إعداد حاوية لتطوير WordPress المحلي ، وإعدادها للإنتاج. هيا بنا نبدأ!
ما هي الحاويات؟
لا يعد تثبيت WordPress نزهة في الحديقة ، وقد يكون تطوير موقع WordPress على الويب أمرًا مربكًا. فيما يتعلق بتطوير الويب ، فإن الحاويات عبارة عن وحدات معيارية من البرامج تقوم بتجميع التعليمات البرمجية الخاصة بك وجميع تبعياتها ، لذلك يصبح نشر WordPress أسهل بكثير. تتيح الحاويات المتعددة أيضًا القيام بذلك بشكل موثوق من بيئة إلى أخرى.
بينما يعد Docker نوعًا من المحاكاة الافتراضية ، إلا أنه يختلف عن الأجهزة الافتراضية العادية (VMs). في حين أن الأجهزة الافتراضية تستخدم مساحة ثمينة ، فإن إضافة نظام التشغيل المضيف إلى مساحة المستخدمين لكل تطبيق ، يشارك التطوير المعبأ في حاويات ذلك عبر جميع الحاويات.
الجمال الحقيقي لـ Docker هو أنه سيعمل بنفس الطريقة بغض النظر عن نوع نظام التشغيل الذي تستخدمه. بالإضافة إلى ذلك ، يمكنك تشغيل العديد من حاويات Docker على جهاز قد يواجه نفس العدد من الأجهزة الافتراضية. لا داعي للقلق أيضًا بشأن أي من الأخطاء التي قد تحدثها التنمية المحلية في بعض الأحيان. يُعرف هذا أيضًا باسم لغز "ولكنه يعمل على جهازي" في تطوير التطبيقات.
الشروع في العمل مع Docker
يحتوي Docker على العديد من المنتجات المختلفة ، والتي تتحد لإنشاء مجموعة قوية من أدوات المطور. يمكنك البدء باستخدام Docker Engine عن طريق تنزيل إصدار المجتمع مجانًا:
ستحتاج إلى إنشاء حساب Docker لتنزيل المحرك. بعد ذلك ، سترغب في التعرف على وثائق "البدء" الخاصة بـ Docker. سيكون لديك ثمانية إصدارات مختلفة من Docker للاختيار من بينها. في هذا المثال ، سنقوم بتنزيل Docker Desktop لنظام التشغيل Mac:
ستحتاج إلى تسجيل الدخول إلى حساب Docker الخاص بك لتنزيل المحرك. بالإضافة إلى ذلك ، ستحتاج إلى التأكد من أن لديك تطبيقًا طرفيًا على جهاز الكمبيوتر الخاص بك جاهزًا للعمل.
استخدام حاوية لـ WordPress (مع Docker)
لاستخدام حاويات Docker لتطوير موقع WordPress محليًا ، ستستخدم أيضًا تطبيق Docker آخر. سنغطي كيفية تثبيت Compose في لحظة ، ولكن من المهم معرفة أن هذه الأداة تُستخدم لتحديد التطبيقات متعددة الحاويات وتشغيلها في Docker. بعد ذلك ، أنت على استعداد للقفز مباشرة!
الخطوة الأولى: تثبيت Compose
قبل بدء العمل باستخدام Docker ، ستحتاج إلى التأكد من تثبيت Compose. إذا كنت تستخدم Docker Desktop لنظام التشغيل Mac أو Windows ، فإن Compose يأتي مثبتًا مسبقًا:
إذا كنت تعمل على Linux ، فستحتاج إلى استخدام Terminal لتنفيذ أوامر التثبيت. فقط ضع في اعتبارك أن Compose يعتمد على Docker Engine. ستحتاج إلى تثبيت كليهما من أجل المشاركة في أي تطوير لـ WordPress.
يستخدم Compose ملف YAML Ain't Markup Language (YAML) لتهيئة جميع خدمات تطبيقك. هذه طريقة سهلة الاستخدام لتقديم تسلسل البيانات ، وهي تعمل مع جميع لغات البرمجة. في هذه الحالة ، سيقوم ملف YAML بإعداد معلومات قاعدة البيانات الضرورية لـ WordPress.
الخطوة الثانية: تحديد المشروع
بمجرد تثبيت Docker Engine و Compose ، يمكنك البدء في مشروع تطوير WordPress الأول. ستحتاج إلى إنشاء دليل مشروع جديد وفارغ باستخدام الأمر "make directory":

mkdir new_wordpress/
سيكون الدليل الذي أعددته هو سياق التطوير الخاص بك ، وسيحتوي فقط على العناصر الضرورية ، بما في ذلك ملف docker-compose.yaml الخاص بك. سننشئ هذا الملف في الخطوة التالية.
بعد ذلك ، يمكنك الانتقال إلى دليلك الجديد باستخدام الأمر التالي:
cd new_wordpress/
ستكون الآن في دليل مشروعك الجديد ، وجاهزًا للعمل.
الخطوة 3: قم بإنشاء ملف Docker لـ YAML
الآن ، ستحتاج إلى إنشاء ملف docker-compose.yaml جديد. سيؤدي ذلك إلى إنشاء تثبيت WordPress الجديد وقاعدة بيانات MySQL الضرورية. سيحتوي ملفك على جميع المعلومات لكل من WordPress وقاعدة البيانات الخاصة بك ، بما في ذلك المنافذ وقواعد البيانات وأسماء المضيف وكلمات المرور الضرورية.
سيبدو ملف YAML الخاص بك بالشكل التالي:
version: '3.3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
db_data: {}
من الجدير بالذكر أن مجلدات Docker تحتوي على بيانات ثابتة ، وقد ترغب في الرجوع إلى الوثائق الخاصة بوحدات التخزين للحصول على السرعة الكاملة.
الخطوة 4: بناء المشروع
الآن بعد أن قمت بتكوين ملف YAML ، ستحتاج إلى تنفيذ الأمر الذي سيسحب جميع الصور المطلوبة وإعداد مشروع WordPress الخاص بك. من داخل دليل المشروع الخاص بك ، ستقوم بتشغيل الأمر التالي:
docker-compose up -d
يجب أن ترى الآن أن Docker "يسحب" صور MySQL و WordPress.
تجدر الإشارة إلى أن صفحات صور Docker Hub تحتوي على الكثير من المعلومات القيمة المتعلقة بحاويات MySQL و WordPress:
ضع في اعتبارك دليل مرجعي متعدد الإمكانات مع أوامر مفيدة لصورة الحاوية. إنها تستحق وضع إشارة مرجعية لاستخدامها لاحقًا.
الخطوة 5: الوصول إلى تثبيت WordPress الخاص بك
نظرًا لأنك تقوم بتثبيت هذا الموقع محليًا ، فستحتاج إلى استخدام المنفذ المشار إليه في ملف YAML الخاص بك بدلاً من البرنامج النصي WordPress /install.php
النموذجي. نظرًا لأننا نستخدم Docker Desktop لنظام التشغيل Mac في مثالنا ، https://localhost
كعنوان IP وفتح المنفذ https://localhost:8000
. كان هذا هو المنفذ المحدد في ملف YAML الخاص بك.
من المحتمل أن تكون في منطقة مألوفة الآن إذا قمت بتثبيت WordPress من قبل ، ويمكنك إكمال عملية "التثبيت الشهيرة التي تبلغ مدتها خمس دقائق":
قد تحتاج إلى منح Docker بضع دقائق لتحميل الصور وتهيئتها بالكامل ، ولكن بعد ذلك يمكنك الوصول إلى WordPress في متصفح لإكمال خطوات التثبيت القياسية.
يوصى بـ "إيقاف التشغيل والتنظيف" بمجرد الانتهاء من التثبيت أيضًا. للقيام بذلك ، يمكنك استخدام أمر Docker "down". سيؤدي هذا إلى إيقاف الحاويات وإزالتها ، ولكنه يحافظ على قاعدة بيانات WordPress. هناك عدد غير قليل من الأشياء التي يجب فهمها حول الإيقاف المؤقت للحاويات وقتلها وإيقافها إذا كنت تستخدم Docker ، لذلك يجدر قراءة المزيد حول هذا الموضوع.
هل يمكنني شحن صورة WordPress إلى خادم الإنتاج؟
من المهم أن نلاحظ هنا أن المواقع المستضافة على خوادم WP Engine لا تمتلك حق الوصول إلى الجذر الضروري لإعداد صورة عامل إرساء جديدة. ومع ذلك ، إذا كان موقعك على خادم إنتاج ، يمكنك اتباع الخطوات أدناه لشحن صورتك.
الآن بعد أن قمت بإنشاء صورة WordPress محليًا ، قد تتساءل عن كيفية استخدام نفس الصورة على خادم الإنتاج. ستكون بعض الخطوات التي أكملتها للتو هي نفسها ، لكنك ستحتاج إلى إنشاء مستودع خاص على Docker Hub أولاً.
لنقل حاوية WordPress Docker الخاصة بك إلى الإنتاج ، ستحتاج إلى استخدام حساب Docker الخاص بك ودفع الصورة إلى مستودع خاص. من هناك ، يمكنك اتباع نفس الخطوات التي اتبعناها سابقًا ، لكنك ستسحب الصورة من مستودعك مباشرةً إلى خادم الإنتاج الخاص بك عن طريق تغيير معلومات المنفذ في ملف YAML الخاص بك.
هناك خيار مجاني لاستخدام المستودعات الخاصة ، ولكن يمكنك إنشاء واحدة فقط. لحسن الحظ ، لدى Docker العديد من مستويات الأسعار التي تناسب احتياجات أي مطور:
في النهاية ، إذا كنت تتطلع إلى تحسين سير عمل التطوير الخاص بك أو كنت تبلل قدميك في هذه المنطقة ، فإن Docker هي أداة ممتازة في مجموعة الموارد الخاصة بك. يوفر أيضًا الكثير من الوثائق المفيدة والدعم.
اصنع شيئًا رائعًا باستخدام محرك WP
الآن بعد أن تم توجيهك إلى Docker ، فقد تكون متحمسًا للانطلاق والبدء في تطوير بعض التطبيقات الجديدة لإعداد موقع WordPress. ضع في اعتبارك أن إحدى أكبر مزايا Docker هي أنك ستعرف أن تطبيقاتك لن تتعرض لأخطاء غريبة خاصة بالجهاز.
هنا في WP Engine ، نحب مشاركة أفضل موارد المطورين حتى تتمكن من إنشاء تجارب رقمية مذهلة لعملائك. سواء كنت في مرحلة التطوير أو التدريج أو الإنتاج لمشروعك ، فلدينا خطط استضافة وحلول رقمية مبتكرة لك!
هل تريد معرفة طرق أخرى لتثبيت تطبيقات WordPress بسرعة؟ أو ربما طرق أخرى لإنشاء موقع WordPress؟ دعنا نعرف أفكارك في قسم التعليقات.