داکر چیست؟
داکر (Docker) یک پلتفرم متنباز برای ساخت، بستهبندی و اجرای اپلیکیشنها در کانتینرها است. کانتینرها محیطهای سبک و ایزولهای هستند که به توسعهدهندگان و تیمهای DevOps کمک میکنند تا برنامههایشان را بههمراه تمام وابستگیها اجرا کنند، بدون اینکه نگران تفاوت بین محیطهای مختلف (مثل لوکال، تست و پروداکشن) باشند.
داکر به ما این امکان را میدهد که:
- اپلیکیشنها را در محیطی مستقل از سیستمعامل اجرا کنیم.
- وابستگیها، تنظیمات و کتابخانههای موردنیاز را در یک داکر ایمیج (Docker Image) بستهبندی کنیم.
- اجرای برنامه در مقیاس بزرگ را سادهتر کنیم.
تغییر دایرکتوری روت داکر
به صورت پیشفرض عموماً داکر دادههایش را در مسیر /var/lib/docker در سیستم عامل لینوکس ذخیره می کند. دادههایی مانند ایمیجهای دانلودشده، دادههای مربوط به کانتینرها، دادههای ذخیرهشده در والیومها، تنظیمات شبکههای داکر، پلاگینها و تنظیمات خاص و غیره را ذخیره میکند. در برخی موارد نیاز است که شما این مسیر را تغییر دهید و به داکر بگویید در جای دیگر دادههایش را ذخیره نماید.
چرا نیاز است دایرکتوری روت داکر را تغییر دهیم؟
۱. فضای کافی روی دیسک اصلی وجود نداشته باشد: اگه حجم زیادی از کانتینرها، ایمیجها و والیومهای داکر استفاده بشه، ممکنه فضای دیسک اصلی پر و باعث مشکل توی کل سیستم شود. برای همین، بهتره این مسیر رو روی یه دیسک جداگانه یا یک پارتیشن بزرگتر تنظیم کنیم.
۲. افزایش سرعت با استفاده از دیسک سریعتر (SSD/NVMe): اگه دیتای داکر روی یه هارد معمولی (HDD) ذخیره بشه، سرعت بارگذاری ایمیجها و اجرای کانتینرها پایین میاد. میتوانیم مسیر دادههای داکر رو روی یه SSD یا NVMe پرسرعت قرار بدیم تا عملکردش بهتر بشه.
۳. جداسازی دادههای داکر از سیستمعامل برای مدیریت بهتر: وقتی دادههای داکر روی یه دیسک جدا باشه، اگر روزی لازم شد سیستمعامل رو مجدداً نصب کنیم، دادههای داکر دستنخورده باقی میمونه و راحت میتونیم دوباره بهش دسترسی پیدا داشته باشیم.
۴. امنیت و پشتیبانگیری راحتتر: بعضی از افراد مسیر دادههای داکر رو روی یه دیسک رمزنگاریشده قرار میدن تا امنیت بیشتری داشته باشن. همچنین، اگر مسیر دادههای داکر روی یه دیسک جدا باشه، میشه راحتتر ازش بکاپ گرفت و در صورت خرابی سریعتر بازیابی کرد.
۵. ذخیره دادهها روی NFS یا یک سرور دیگر: در برخی شرکتها، دادههای داکر رو روی یک فضای ذخیرهسازی شبکهای (NFS، SAN، یا NAS) قرار میدن تا تیمهای مختلف به اون دسترسی داشته باشند یا بهسادگی بین چند سرور جابجا بشه.
راهنمای گام به گام تغییر دایکتوری روت داکر
دقت کنیم که مراحل زیر را دقیق و به ترتیب انجام دهیم. در صورتی که این مراحل را به ترتیب و صحیح انجام ندهیم ممکن است با خطاهای عجیب غریبی مواجه شویم. این مراحل در توزیع اوبونتو (ubuntu) تست شده است اما برای هر توزیع دیگری از لینوکس که از systemd استفاده میکند نیز جواب میدهد.
امیدوارم این پست آموزشی برای شما مفید باشد. اگر در هر گام با خطایی روبرو شدید یا سوالی دارید در بخش کامنتها برام بنویسید که بهتون کمک کنم.