alawadi.cloudمستندات
المفاهيم الأساسية

المشاريع والخدمات والشبكة الخاصة

اجمع تطبيقات Docker في شبكة مشروع خاصة واحدة، مع DNS داخلي يربط خدماتك ببعضها.

نموذج المشروع

المشروع شبكة خاصة واحدة تجمع تطبيقك بكامل خدماته. تعمل تطبيقات Docker معاً داخل الشبكة نفسها، وتتخاطب فيما بينها عبر DNS داخلي. كل تطبيق يعمل انطلاقاً من حزمة Docker ترفعها أنت. راجع النشر عبر GitHub Actions. أمّا قواعد البيانات المُدارة Postgres وMySQL وRedis فهي جزء من نموذج المشروع، وتعمل داخل الشبكة الخاصة نفسها. راجع قواعد البيانات المُدارة.

  • لكل تطبيق Docker إعداد مدى الظهور (Visibility) تختاره عند إنشائه: عام (Public) يحصل تلقائياً على نطاق فرعي *.alawadi.cloud مُدار مع شهادة TLS (دون أن تُدخل أي نطاق)؛ داخلي (Internal) يبقى على DNS الداخلي فقط، ويصل إليه باقي التطبيقات داخل المشروع نفسه.
  • اعتمد اسم التطبيق مثل api للاتصال الخاص بين التطبيقات داخل المشروع.
  • اربط قاعدة بيانات مُدارة بتطبيقك، فتُحقَن سلسلة الاتصال الخاصة بها كمتغيّر بيئة. تقرأ DATABASE_URL (مع Postgres أو MySQL) أو REDIS_URL (مع Redis) من البيئة، دون أن تتعامل مع كلمة المرور بنفسك.
  • تنطبق حصص المشروع على كل تطبيق داخله.
  • عند حذف المشروع، تُحذف معه تطبيقاته وإضافاته المُدارة.
# App-to-app over internal DNS: use the app name and its port
http://api:8080

# Linked databases arrive as environment variables, never a hardcoded host
DATABASE_URL   # Postgres or MySQL
REDIS_URL      # Redis

في هذه الصفحة