عن المشروع

container هي أداة سطر أوامر من Apple لإنشاء وتشغيل حاويات Linux كأجهزة افتراضية خفيفة على أجهزة Mac. كُتبت بلغة Swift ومُحسّنة لأجهزة Apple silicon. تستهلك الأداة وتنتج صور حاويات متوافقة مع OCI، مما يتيح سحب الصور من ودفعها إلى أي سجل حاويات قياسي وتشغيلها في تطبيقات أخرى متوافقة مع OCI. تعتمد الأداة في جوهرها على حزمة Containerization بلغة Swift للإدارة منخفضة المستوى للحاويات والصور والعمليات. المتطلبات ودعم المنصات: يلزم استخدام جهاز Mac يعمل بشريحة Apple silicon، والأداة مدعومة على نظام macOS 26، مستفيدةً من ميزات المحاكاة الافتراضية والشبكة في هذا الإصدار. لا يتم دعم إصدارات macOS الأقدم. يتم التثبيت من خلال حزمة تثبيت موقعة من صفحة إصدارات GitHub، التي تضع الملفات تحت المسار /usr/local. يتم بدء خدمة النظام عبر الأمر `container system start`. يمكن تشغيل أول حاوية باستخدام `container run --rm alpine echo hello`، الذي يسحب صورة alpine، ويشغّلها في جهاز افتراضي Linux خفيف، ويطبع المخرجات، ويحذف الحاوية عند الخروج. يتم التعامل مع الترقية والتخفيض عبر إعادة تثبيت الحزمة الموقعة أو باستخدام سكربت update-container.sh المثبت؛ يجب إيقاف الخدمة الحالية أولاً. يتطلب التخفيض إلغاء تثبيت الإصدار الحالي، مع إمكانية الاحتفاظ ببيانات المستخدم باستخدام الخيار -k أو حذفها باستخدام الخيار -d. يستخدم إلغاء التثبيت سكربت uninstall-container.sh مع خيارات الاحتفاظ بالبيانات نفسها. تغطي الوثائق دروساً إرشادية تبني وتشغل وتنشر صورة خادم ويب بسيط، وأدلة كيفية الاستخدام، ونظرة عامة تقنية، ومرجعاً كاملاً للأوامر، وتعليمات البناء، ووثائق واجهة برمجة التطبيقات المولدة. ترحب المساهمات عبر دليل المساهمة الخاص بالمشروع. المشروع قيد التطوير النشط، وإصدارات الإصدارات هي إصدارات منتجات وليست إصدارات دلالية. تتم عادةً الحفاظ على توافقية سطر الأوامر ضمن إصدار رئيسي واحد، على الرغم من أن بعض التغييرات التي تكسر التوافق قد تكون ضرورية بين الحين والآخر؛ الميزات المصنفة كتجريبية، مثل الأمر الفرعي k8s، قد تتغير دون ضمانات للتوافق مع الإصدارات السابقة. تحافظ واجهة برمجة التطبيقات container-apiserver XPC على التوافق الأمامي والخلفي ضمن الإصدار الرئيسي، بينما لا تضمن مساعدات XPC الأخرى غير العامة التوافق عبر الإصدارات. توفر بيانات التطبيق توافقاً أمامياً فقط، مضموناً ضمن إصدار رئيسي واحد، وقد يتطلب الترقية إلى إصدار رئيسي أحدث مسار ترقية محدداً.