ویرگول
ورودثبت نام
عباس منصوری
عباس منصوریعشق تکنولوژی
عباس منصوری
عباس منصوری
خواندن ۱ دقیقه·۲ ساعت پیش

چرا بجز بخش دواپس، توی خود پروژه هم از داکر استفاده کردم؟

ما توی سایتمون یه بخش IDE آنلاین داشتیم که به کاربرها اجازه می‌داد کد بزنن و نتیجه رو همون‌جا ببینن. اما اجرای کدهای ناشناس روی سرور اصلی، یه کابوس امنیتیه! کافی بود یه کاربر یه کد مخرب بنویسه تا به فایل‌های سیستمی یا دیتابیس دسترسی پیدا کنه یا کلاً سرور رو مختل کنه.

​برای حل این مشکل، تصمیم گرفتم از داکر مستقیم توی لایه خودِ اپلیکیشن استفاده کنم. حالا روال کار این‌طوریه که به محض اینکه کاربر دکمه ران (Run) رو می‌زنه، یه کانتینر ایزوله (Sandbox) ساخته می‌شه؛ کد توی امن‌ترین حالت ممکن و بدون هیچ دسترسی به سرور اصلی اجرا می‌شه و بعد از اینکه خروجی رو برگردوند، اون کانتینر نابود می‌شه.

​با این کار علاوه‌بر امنیت، خیالم از منابع سرور هم راحت شد؛ چون برای هر کانتینر سقف مصرف رم و سی‌پی‌یو گذاشتم تا اگه کسی یه حلقه بی‌نهایت هم ران کرد، سرور زیر بار نره و کم نیاره.

داکردواپسامنیتپایتونجنگو
۲
۱
عباس منصوری
عباس منصوری
عشق تکنولوژی
شاید از این پست‌ها خوشتان بیاید