عن المشروع

Shelter هو أداة بنية تحتية للنشر مفتوحة المصدر تحوّل خادم VPS واحدًا إلى منصة نشر كاملة الميزات. يستهدف المطورين والمشغلين الذين يرغبون في راحة منصات الاستضافة المُدارة مع الاحتفاظ بملكية كاملة لبنيتهم التحتية وبياناتهم وبيانات اعتمادهم. **مصادر النشر:** يدعم Shelter مصادر نشر متعددة بما في ذلك مستودعات GitHub (عبر تطبيق GitHub بصلاحيات محدودة مع خيار الدفع للنشر)، وعناوين HTTPS العامة لـ Git، ورفع ملفات ZIP، ورفع المجلدات المحلية. يتم تقسيم عمليات رفع المصادر والتحقق منها وإصدارها. **البناء والتفعيل:** تقوم المنصة ببناء صور الحاويات من المصدر، وتجري فحوصات صحة المرشحين على شبكة معزولة لكل مشروع، ولا تقوم بتبديل حركة المرور الإنتاجية إلا بعد التحقق. تستخدم عمليات البناء مُنشئ Docker BuildKit مخصصًا مع حدود موارد قابلة للتكوين للذاكرة والتبديل ووحدة المعالجة المركزية وPID والحد الأقصى للتوازي. **التوجيه والشبكات:** يتم نشر النطاقات ولوحة الإدارة عبر Cloudflare Tunnel مُدار، مما يلغي الحاجة إلى منافذ عامة على المضيف. يتعامل Traefik مع توجيه HTTP مع شبكات جسر لكل مشروع لضمان عزل المشاريع. ينتهي TLS عند حافة Cloudflare. **تكامل Cloudflare:** تكامل عميق مع Cloudflare للمصادقة عبر OAuth وإدارة الأنفاق وDNS وإدارة المناطق والتحقق من توفر أسماء المضيفين ودعم النطاقات المتعددة لكل مشروع. يدعم تدفقات رمز API وOAuth. **ميزات المشغل:** لوحة تحكم مع سجلات النشر والتراجع وإدارة المشاريع ومتغيرات بيئة مشفرة وحدود موارد وسجلات وقت التشغيل المباشرة ومراقبة لكل مشروع. معاينات لقطات شاشة تلقائية لعمليات نشر المواقع الناجحة. **الأتمتة:** رموز وصول شخصية محدودة الصلاحية ومنتهية الصلاحية، وواجهة برمجة تطبيقات HTTP موثقة مع مواصفات OpenAPI، وأداة CLI قابلة للتثبيت للتحكم البرمجي. **الأمان:** تفصل البنية بين API (بدون وصول إلى Docker socket) والعامل (مع وصول إلى Docker socket)، وتستخدم أسرارًا مشفرة، وحاويات فحص صحة قابلة للتخلص مع صلاحيات مخفضة، ونموذج تهديد يعترف بأنه مصمم لتطبيقات موثوقة وليس سيناريوهات متعددة المستأجرين العدائية. **التثبيت:** سكربت تثبيت لخوادم Ubuntu 24.04/26.04 LTS VPS مع تثبيت تلقائي للتبعيات، ودعم التوفير غير التفاعلي، وأمر طبيب لفحوصات الصحة. تبقى اللوحة مرتبطة بـ 127.0.0.1 للتشغيل الأولي والوصول الطارئ عبر SSH. المشروع مرخص تحت AGPL-3.0-only وهو حاليًا في مرحلة MVP. مبني باستخدام TypeScript وNode.js 24+ وDocker Compose v2 وCloudflare Tunnel.