6 بهترین روش برای استفاده از ظروف

بیایید در مورد برخی از بهترین روشهایی که باید هنگام استفاده از ظروف استفاده کنید ، صحبت کنیم.


کانتینرزاسیون به طور گسترده ای در چندین سازمان برای استقرار برنامه های داخل یک ظرف استفاده می شود. این ظروف به دلیل سبک بودن بسیار محبوب هستند. برای استفاده از بیشترین استفاده ظروف, هنگام کار با آنها ، باید بهترین راهکارها را دنبال کنید.

از تصویر پایه استفاده کنید

به لطف داکر ، ایجاد تصاویر کانتینر هرگز ساده نبوده است.

تصویر پایه خود را مشخص کنید ، تغییرات خود را اضافه کنید و ظرف خود را بسازید. اگرچه این برای شروع بسیار عالی است ، استفاده از تصاویر پایه پیش فرض می تواند منجر به تصاویر بزرگ پر از آسیب پذیری های امنیتی شود. همچنین ، از استفاده از تصویر docker برچسب “آخرین” خودداری کنید زیرا احتمال وجود اشکال در آن بسیار زیاد است.

دبیان یا اوبونتو توسط اکثر تصاویر داکر به عنوان تصویر پایه استفاده می شود. آنها از نظر سازگاری و سوار شدن آسان بسیار مفید هستند ، اما این تصاویر پایه می توانند صدها مگابایت سربار اضافی را به ظرف شما اضافه کنند..

به عنوان مثال ، برنامه های ساده Node.js و Go ، “سلام جهانی” حدود 700 مگابایت هستند. برنامه شما احتمالاً اندازه چند مگابایت دارد. بنابراین ، تمام این سربار اضافی در فضای تلف شده و محل مخفی عالی برای آسیب پذیری ها و اشکالات امنیتی است.

اگر زبان برنامه نویسی یا پشته شما گزینه ای برای تصویر پایه کوچک ندارد ، می توانید ظرف خود را با استفاده از خام ساخته کنید Alpine Linux به عنوان نقطه شروع این امر همچنین به شما امکان کنترل کامل بر آنچه در داخل ظروف شما وارد می شود ، می دهد.

تصاویر کانتینر را کوچکتر نگه دارید

استفاده از تصاویر پایه کوچکتر احتمالاً ساده ترین راه برای کاهش اندازه ظرف شما است.

شانس زبان یا پشته شماست که از آن استفاده می کنید یک تصویر رسمی ارائه می دهد که بسیار کوچکتر از تصویر پیش فرض است. به عنوان مثال ، اجازه دهید نگاهی به ظرف Node.js بیندازیم. رفتن از گره پیش فرض: جدیدترین تا گره: 14-آلپ تقریباً ده برابر اندازه تصویر پایه ما را کاهش می دهد.

آخرین برچسب nodejs - geekflare

در مقابل.….

nodejs alpine tag - geekflare

در پرونده جدید Docker ، کانتینر با گره شروع می شود: تصویر alpine ، یک دایرکتوری برای کد ایجاد می کند ، وابستگی ها را با NPM نصب کنید و در آخر سرور Node.js را شروع می کنید. با این به روزرسانی ، ظرف حاصل تقریباً ده برابر کوچکتر است.

شما با استفاده از الگوی سازنده ظرف را حتی سبک تر می کنید. با زبانهای تفسیری ، کد منبع به مترجمی ارسال می شود و سپس مستقیماً اجرا می شود. اما با یک زبان کامپایل شده ، کد منبع از قبل به کد کامپایل شده تبدیل می شود.

اکنون ، با زبان های کامپایل ، مرحله تدوین اغلب به ابزاری احتیاج دارد که برای اجرای کد لازم نیست. بنابراین این بدان معنی است که می توانید این ابزارها را از ظرف نهایی به طور کامل حذف کنید. برای این کار می توانید از الگوی سازنده استفاده کنید. کانتینر اول کد را ایجاد می کند ، و سپس کد کامپایل شده در ظرف نهایی بسته بندی می شود بدون اینکه تمام کامپایلرها و ابزارهای لازم برای تهیه کد کامپایل شده مورد استفاده قرار گیرند.

استفاده از تصاویر پایه کوچک و الگوی سازنده روشهای خوبی برای ایجاد ظروف بسیار کوچکتر و بدون کار زیاد است.

تصاویر کانتینر خود را برچسب گذاری کنید

برچسب زدن داکر ابزاری فوق العاده قدرتمند برای ما است وقتی می توانیم تصاویر خود را مدیریت کنیم. این کمک می کند تا نسخه های مختلف تصویر docker را مدیریت کنید. در زیر مثالی از ساختن تصویر docker با نام تگ v1.0.1 آورده شده است

docker build -t geekflare / ubuntu: v1.0.1

اکنون ، دو نوع برچسب استفاده شده است: پایدار برچسب ها منحصر بفرد برچسب ها.

برای حفظ تصویر پایه ی ظرف از برچسب های پایدار استفاده کنید. از استفاده از این برچسب ها برای ظروف استقرار خودداری کنید زیرا این برچسب ها به طور مرتب به روزرسانی ها را دریافت می کنند و این می تواند منجر به عدم تناقض در محیط تولید شود..

از تگ های منحصر به فرد برای استقرار استفاده کنید. با استفاده از برچسب های منحصر به فرد ، می توانید خوشه تولید خود را با سهولت در بسیاری از گره ها مقیاس کنید. این از ناسازگاری اجتناب می کند ، و میزبان هیچ نسخه تصویر docker دیگری را به سمت خود نمی کشد.

همچنین ، به عنوان یک روش خوب ، باید برچسب های مستقر شده تصویر را با تنظیم نوشتن-فعال کردن به صورت false قفل کنید. این کمک می کند تا به طور اشتباه تصویر مستقر از رجیستری حذف نشود.

امنیت کانتینر

در زیر نکات اساسی برای اطمینان از ایمن بودن ظروف ذکر شده است.

  • صحت هر نرم افزاری را که در ظرف خود نصب می کنید ، تأیید کنید
  • از تصاویر یا عکسهای docker امضا شده با یک چک معتبر استفاده کنید.
  • اگر از مخزن شخص ثالث استفاده می کنید ، اطمینان حاصل کنید که URL از HTTPS استفاده می کند.
  • قبل از استفاده از مدیر بسته خود ، برای به روزرسانی بسته ها ، کلیدهای GPG مناسب را وارد کنید
  • هرگز برنامه های خود را به عنوان root اجرا نکنید. شما همیشه باید از دستورالعمل کاربر در داخل dockerfile استفاده کنید تا اطمینان حاصل کنید که امتیازات کاربر خود را رها می کنید.
  • SSH را درون ظرف خود اجرا نکنید.
  • سیستم فایل را فقط خواندنی کنید.
  • برای تقسیم خوشه خود از نامهای نام استفاده کنید.

معیار داکر توسط مرکز امنیت اینترنت (CIS) برای ارزیابی امنیت یک کانتر docker ارائه شده است. آنها یک اسکریپت منبع باز به نام ارائه داده اند Docker Bench for Security, که می توانید آن را اجرا کنید تا بررسی کنید که یک ظرف docker چقدر امن است.

یک برنامه در هر کانتینر

ماشین های مجازی در اجرای چندین چیز به طور موازی بسیار خوب هستند ، اما وقتی صحبت از ظروف می شود ، باید یک برنامه را در داخل یک ظرف اجرا کنید. به عنوان مثال ، اگر یک برنامه MEAN را در یک محیط کانتینر اجرا می کنید ، باید یک ظرف برای MongoDB ، یک ظرف برای Express.js ، یک ظرف برای Angular و یک ظرف برای Node.js داشته باشد..

حتی ظروف می توانند چندین برنامه را به موازات آن اجرا کنند ، اما می توانید از مدل ظرف استفاده کنید. در زیر یک نمایش صحیح و غلط از برنامه های در حال اجرا در یک ظرف ارائه شده است.

برنامه تنها یک ظرف - geekflare

ظروف به گونه ای طراحی شده اند که چرخه ای مشابه با برنامه کاربردی داشته باشند. با شروع ظرف ، برنامه شروع می شود. هنگامی که یک ظرف متوقف شود ، برنامه نیز متوقف می شود.

ظروف بدون برگ را اجرا کنید

ظروف به طور اساسی طراحی شده اند تا بدون تابعیت باشند. در این حالت ، داده های مداوم که حاوی اطلاعاتی در مورد وضعیت ظرف هستند در خارج از ظرف ذخیره می شوند. برای ذخیره سازی اطلاعات مربوط به جلسه کاربر می توانید از بانک اطلاعاتی با تاخیر کم مانند Redis استفاده کنید و همچنین می توانید دیسک خارجی را برای ذخیره سازی در سطح بلوک وصل کنید..

با نگه داشتن فضای ذخیره سازی در خارج از ظرف ، می توانید به راحتی و بدون ترس از دست دادن هرگونه ظرف ، ظرف را خاموش یا نابود کنید.

اگر از ظروف بدون برگ استفاده می کنید ، مهاجرت یا مقیاس آن براساس نیازهای تجاری بسیار آسان است.

نتیجه

موارد فوق برخی از مهمترین روشهایی است که در صورت ساختن یک محیط تولید Docker باید در هنگام کار با ظروف از آنها پیروی کنید و سپس نحوه تأمین امنیت آن را بررسی کنید..

برچسب ها:

  • داکر

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map