‫براندون في البداية.
‫السؤال التالي هنا هو رفع دعوى ضد المستخدم.
‫كيف تفضل استخدام المستخدمين غير الجذر في الحاويات والاحتفاظ بأذونات الملفات على أو
‫Hossain.
‫ما هي أفضل الممارسات الحالية حتى الأذونات في Docker.
‫ليس من العدل أن نقول إن Docker نفسه مع الملفات التي تقوم بتشغيلها في حاوية يمكن
‫أن يكون محبطًا للغاية خاصة إذا كنت تستخدم حوامل ربط ، لذا فإن روابط الربط تجمع بين أذونات ملفات المضيف مع تلك الأشياء
‫التي تعمل في الحاوية ويمكن أن يحدث ذلك في كثير من الأحيان يقودك إلى سحب شعرك والجنون قليلاً ، وقد
‫كانت بعض أصعب مشاريعي عندما احتجنا إلى تخزين ملفات مشتركة متعددة الخوادم لحاويات متعددة على مضيف مختلف
‫، وكلها تصل إلى نفس الملفات مع الأذونات الصحيحة وأيضًا باستخدام أقل امتياز مع المستخدمين
‫غير المشرفين حق المستخدمين غير الجذر.
‫لذلك يمكن أن يكون هؤلاء خادعين حقًا.
‫أود أن أقول المستخدم مقابل الذهاب.
‫لذلك عندما تسألني عن المستخدم براندون أفترض أنك تتحدث عنه في مبنى DR لأن هذا هو المكان
‫الذي طبقه المستخدمون بشكل صحيح.
‫ويميل إلى العمل بشكل أفضل مما تفعله سو داخل بناء كلب أو صورة.
‫هذا ما أفهمه على الأقل عن سبب استخدام go Sue غالبًا داخل صور Docker للبناء
‫ولا أعرف في الواقع سبب معرفتي بها في مرحلة ما منذ سنوات ثم نسيتها بسرعة.
‫لذا أفترض أن ما يتحدث عنه سؤالك حقًا هو عندما تقوم بإنشاء الصور وأود
‫أن أقول إن المستخدم هو أفضل ممارسة هناك لاستخدام سطور ملفات Docker إذا كنت داخل أمر تشغيل وتحتاج إلى تغيير الأذونات في جزء معين من أمر التشغيل
‫هذا ، وهذا هو المكان الذي يمر فيه الأمر بالنسبة لي ، فمن المنطقي
‫لأنك ربما تحتاج إلى القيام بأشياء كمستخدم جذر ولكن ليس دائمًا داخل أمر التشغيل هذا.
‫لذلك ربما يكون هذا هو الوقت الذي تختار فيه المضي قدمًا والأمور الأخرى بشكل صحيح.
‫لذلك أعتقد أن ما يحدث إلى حد كبير مع الأشخاص الذين لديهم أذونات ليست الملفات الموجودة في الصورة
‫، بل هي الملفات أثناء وقت التشغيل الصحيح.
‫لذلك بمجرد بدء تشغيل الحاوية الخاصة بك ، لنفترض أن لديك تطبيق عقدة وأن تطبيق
‫العقدة هذا قيد التشغيل هو عقدة مستخدم ولديه دليل تحميل مستخدم ثم يتم تخزين هذه الملفات على المضيف
‫ومن ثم سيتم تخزينها على أنها عقدة المستخدم ولأن هذا هو تشغيل العقد ، ثم لديك عملية أخرى ربما تكون حاوية مختلفة
‫وتستخدم وحدة تخزين مشتركة أو شيء ما أو مبلغ شراء وهذا لا يعمل بنفس المستخدم
‫ويحتاج إلى الوصول إلى تلك الملفات قراءة بشكل صحيح وستواجه هذه المشكلات حول
‫الأذونات.
‫لذلك أود أن أقول أنه في نهاية اليوم إذا لم تتمكن من حل هذه المشاكل مع الموضحة في التعديل ، فلن يحدث ذلك.
‫بعبارة أخرى ، داخل ملف docker ، إذا كنت تفعل على سبيل المثال أمر نسخ بدلاً
‫من ملف doctor ، يمكنك الآن إجراء عرض على ذلك بحيث عندما تقوم بنسخ الملفات ونسخها مع المستخدمين المناسبين
‫الذين تم منحهم أذونات لـ تلك الملفات لا يمكنك القيام بأمر.
‫لا أفكر حتى الآن على الرغم من أن هذا قد يكون ميزة في الواقع شيء وقد تمت إضافة
‫الكثير منها.
‫البطة.
‫لذلك نذهب إلى الوثائق الرسمية على هذا التكبير الصحيح وإذا ذهبت إلى نعم.
‫لذلك إذا بحثت متلألئًا ، فلا أرى أي شيء.
‫ولكن إذا ذهبت إلى العرض ، يمكنك معرفة المكان الذي تستخدم فيه الإعلان أو النسخة ، يمكنك نسخ تلك الموجودة بالأذونات
‫الصحيحة.
‫هذا شيء ضخم حدث منذ عام أو عامين ويوفر لنا الكثير من المساحة لأننا لن نضطر
‫بعد ذلك إلى تغيير الأذونات على الملفات التي الخطوة الأولى هي الخطوة الثانية إذا كنت بحاجة
‫إلى تغيير أذونات الدلائل في وقت التشغيل مثلك تحتاج إلى تعيين وحدة تخزين لأذونات معينة.
‫هذا ما هو نص نقطة الدخول.
‫لذا ، إذا كنت تريد إلقاء نظرة على مثال مثل إذا عدنا للتو إلى Docker Hub وكنت سأذهب إلى الجزء التكميلي الخاص بي وإذا
‫ذهبت إلى أحد هذه الملفات التكميلية في Docker ، فربما تجد أن هناك نقطة دخول البرنامج النصي خاصة مع أشياء
‫مثل قواعد البيانات ونقطة الدخول ، وهو شيء يمكن أن يبدأ في كل مرة يتم فيها
‫تشغيل الحاوية ، وغالبًا في البرامج النصية لنقاط الإدخال هذه ، سترى أشياء مثل أحتاج منك
‫إظهار كل شيء في هذا الدليل وتعديله أو كما تعلم علامة عامة صحيحة أو شيء ليس دائمًا أكثر الأشياء
‫أمانًا للقيام بها ولكن إذا كنت بحاجة إلى تغيير الأذونات أثناء التنقل ، فيمكنك القيام
‫بذلك داخل البرنامج النصي.
‫الآن بالطبع المشكلة في هذا البرنامج النصي هي أنه يعمل كمستخدم أعتقد أنه يعمل كمستخدم قمت بتعيينه
‫في ملف عامل إرساء بحيث تصبح مشكلة أخرى لأنه إذا كنت بحاجة إلى تغيير الأذونات على الملفات
‫لجعلها قابلة للقراءة و يمكن قراءته من قبل مستخدم العقدة ولكن البرنامج النصي يعمل كمستخدم
‫عقدة ثم لديك مشاكل لأنه لا يمكنك الذهاب إلى الطريق.
‫في الأساس في تلك المرحلة.
‫لذلك أود أن أقول أنه لا يوجد حل سهل أو أفضل لذلك ، لكن الأذونات هي شيء يمكنك على الأرجح
‫كتابة قسم كامل للدورة التدريبية حول كتابة جلسة تدريبية كاملة متعددة الساعات حول الطرق المختلفة التي يتم التعامل
‫بها مع الأذونات.
‫معلومة صغيرة هناك.
‫آخر شيء سأقوله هو أنني أعلم أنني أتحدث عن سؤالك نوعًا
‫ما ، لكنه شيء أعتقد أنه يطرأ كثيرًا هو أن أذونات الملفات في Linux هي مجرد أرقام.
‫في الواقع ، هذه في الواقع نصيحة تم إعطاؤها لي على ما أعتقد من قبل Phil Estes
‫وهو شخص قام بتطبيق مساحة الاسم التي يواجهها المستخدم.
‫أنا آسف لميزة مساحة اسم المستخدم داخل Docker والتي لم يتم تمكينها افتراضيًا.
‫ولكن إذا كنت ترغب في تشغيل جميع الحاويات الخاصة بك على أنها غير جذر ، فيمكنك تمكين ذلك.
‫وكان أحد الأشخاص الذين ساعدوا في إضافة هذه الميزة وكنا نتحدث يومًا ما وأشار إلى أنك
‫تعرف المستخدم أنا. د. والمجموعة أنا. د. هي مجرد أفكار يمكنك تعيين هذا الرقم
‫على ما تريد.
‫إنها مجرد أرقام.
‫وبالتالي ، إذا كنت بحاجة إلى ملفات على المضيف على سبيل المثال لمطابقة تلك الموجودة في الحاوية إذا قمت
‫بتعيين كل شيء بواسطة I. د. رقم ثم أسماء المستخدمين في هذه المرحلة غير ذات صلة حقًا.
‫إنهم حقًا أنا. د. التي ستبحث عنها لمطابقة هذه الأذونات.
‫لذلك في الحالة التي كنت أعمل فيها في مشروع واحتجنا إلى مشاركة الملفات عبر حاويات متعددة لكنهم كانوا
‫جميعًا يعملون كمستخدمين مختلفين واحتجنا للتأكد من مطابقة الأذونات.
‫لقد تأكدنا يدويًا من أن هذه الملفات كانت تستخدم الأرقام الصحيحة أو أنا. د. للمالك والمجموعة ، ثم بدأ كل شيء في العمل
‫لأن ذلك لم يكن مهمًا حقًا لأنه لم يكن لدينا المستخدم الذي تم إنشاؤه على المضيف ، على سبيل المثال
‫الذي كان يطابق أنا. د. داخل الحاوية.
‫لقد حرصنا للتو على أن يكون I. د. مطابقة الأرقام ، لذا فهذه نصيحة صغيرة.
‫لقد استغرق الأمر مني بعض الوقت لمعرفة ذلك وفهم كيفية عمل هؤلاء ولكن في
‫الحقيقة فقط في نهاية اليوم ، لا يقوم بإجراء مقارنة للتأكد من أن أرقام القراءات والحقوق
‫والأذونات تتطابق مع المستخدم الذي ينفذ الأمر هو فعل.
‫سؤال جيد.
‫أنا سعيد لأنك طرحت هذا الموضوع لأن هذا ليس شيئًا ناقشناه هنا
‫مؤخرًا ويجب أن نتحدث عنه أكثر.