این پنجمین مقاله از سری مقالات آموزش استفاده از داکر است، در این قسمت قصد داریم تا توضیح کلی و تکمیلی درباره داکر والیوم یا حافظه داکر خدمت شما ارائه کنیم. در قسمتهای قبلی با کامندهای کلی داکر، دستورات و چگونگی کار کردن با داکر، روش ساخت داکر کانتینر با استفاده از داکر فایل و داکر کامپوز و استفاده های آن و روش ساخت و استفاده و کاربردهای آن بحث کردیم و حال نوبت آن است تا درباره قسمت مهم دیگری از داکر به اسم داکر والیوم یا حافظه داکر بحث کنیم.
در نظر داشته باشید که این مقاله برای کسانی نوشته شده از که تا کنون تجربهای از کارکردن با داکر نداشته و این سلسله مقالات اولین تجربه مواجهه آنها با داکر میباشد. به همین دلیل توضیحات اصولا سطحی و در دسترس بوده و گزینههای جانبی زیادی را بررسی نمیکنیم.
در این مقاله خواهیم خواند:
- داکر والیوم چیست.
- چگونه میتوانیم یک داکر والیوم بسازیم، آنرا حذف کنیم و لیست آنها را مشاهده کنیم.
- چگونه میتوانیم یک داکر والیوم یا حافظه به یک کانتینر اضافه کنیم.
- چگونه یک والیوم را بین چند کانتینر به اشتراک بگذاریم؟
به طور کلی بحث داکر والیوم بحث حرفهای در زمینه داکر میباشد. ما به علت اهمیت بالای این موضوع یک قسمت از قسمتهای آموزش استفاده از داکر را به این موضوع بسیار مهم اختصاص دادیم.
داکر والیوم چیست؟
در یک کانتینر شما به مکانی برای نگهداری اطلاعات موجود در داخل داکر دارید و این قسمت مکان دقیقی از داکر را اشغال نمیکند. از طرفی در نظر داشته باشید که بعد از حذف یک کانتینر تمام اطلاعات موجود در آن از بین خواهد رفت و نابود خواهد شد. در حالتی که شما نیاز داشته باشید که بعد از حذف کانتینر هیچ کدام از قسمتهای حافظه آن از بین نروند، اطلاعات آن را به کانتینر جدیدی اضافه کنید و اطلاعات را بین چندین کانتینر در اشتراک بگذارید، از داکر والیوم استفاده میکنید. به بیان ساده قسمتی است که اطلاعات پردازشها و اطلاعاتی که داکر آنها را پردازش میکند در آن نگهداری میشود.
استفادههای داکر والیوم چیست؟
- جداسازی کانتینرها از قسمت حافظه دستگاه.
- اشتراک گذاری اطلاعات بین کانتینرها.
- اضافه کردن اطلاعات به یک کانتینر برای انجام پردازش.
- حذف اطلاعات از یک داکر و شروع چرخه جدید پردازش.
ساختار کلی دستورات داکر والیوم:
دستور کلی برای استفاده کردن از آن و امکانات آن به صورت زیر می باشد:
...docker volume
در حین استفاده از این قسمت شما میتوانید از گزینههای این دستور استفاده کنید که گزینههای آن به شرح زیر است:
-
create:
با استفاده از این گزینه میتوانید یک والیوم جدید بسازید.
-
inspect:
با استفاده از این گزینه میتوانید تمام اطلاعات یک والیوم را مشاهده کنید.
-
ls:
با استفاده از این دستور میتوانید لیست تمام والیوم ها را مشاهده کنید
-
prune:
با استفاده از این دستور میتوانید تمام والیومهایی که جایی استفاده نشدهاند، را حذف کنید
-
rm:
با استفاده از این دستور شما میتوانید، والیوم را حذف نمایید.
ساخت داکر والیوم:
شما میتوانید با استفاده از دستور زیر یک والیوم بسازید:
docker volume create VOLUME_NAME
در نظر داشته باشید که میتوانید به جای عبارت VOLUME_NAME از نام مورد علاقه خود استفاده کنید. همانطور میتوانید لیست تمام والیومهای ساخته شده خود را با دستور زیر به دست آورید:
docker volume ls
و با استفاده از کد دستوری زیر میتوانید اطلاعات یک والیوم خود را نیز به دست آوریم.
docker volume inspect VOLUME_NAME
در این دستور تمامی اطلاعات این والیوم به شما نمایش داده میشود و شما میتوانید از آنها به خصوص Mountpoint استفاده کنید. میتوانید با استفاده از دستور زیر والیوم خود را حذف کنید.
docker volume rm VOLUME_NAME
توجه داشته باشید که در صورتی که نیاز به پاک کردن تمام والیومهای استفاده نشده شما در سرور بوده از دستور زیر استفاده کنید:
docker volume prune
در صورتی که به سوال مطرح شده موافقت کنید تمام والیومهای مورد نظر حذف خواهندشد.
پیشنهاد مطالعه : برای خواندن قسمت ششم داکر مقالهی آموزش نصب داکر سوارم را مطالعه نمایید.
چگونه به یک داکر یک داکر والیوم را اضافه نماییم:
به طور کلی در هنگامی که میخواهیم یک والیوم را به یک داکر در هنگام ساخته شدن آن اضافه کنید، در دستور داکر ران بعد از استفاده از سوییچ -v از نام والیوم خود استفاده کنید. بعد از علامت : به قسمتی که علاقه داریم تا در داخل داکر به آن اختصاص داده شود، استفاده میکنیم.
مثال داکر والیوم:
docker run --name Jenkins1 -v VOLUME_NAME:/var/jenkins_home -p 8080:8080 -p 50000:50000 jenkins
در دستور بالا یک کانتینر با نام Jenkins1 ساخته میشود که والیوم مورد نظر ما در آن به مسیر /var/jenkins_home در داخل داکر مانت میشود و در پورت های ۸۰۸۰ و ۵۰۰۰۰ سیستم، داکر در دسترس ما خواهد بود؛ این داکر یک داکر جنکینز بوده و قرار است این سرور را به ما ارائه دهد.
چگونه یک داکر والیوم را در دو کانتینر استفاده کنیم:
این مساله بسیار راحت میباشد؛ تنها کافیست بعد از این که داکر اول را با دستور قسمت بالا ساختید، یک داکر دیگر بسازید و والیوم مورد نظر خود را به همان صورت به آن اضافه کنید.
docker run --name Jenkins2 -v VOLUME_NAME:/var/jenkins_home -p 8081:8080 -p 50001:50000 jenkins
بعد از انجام این کار مشاهده میکنیم که داکر جدید ساخته شده فرقی با داکر قبلی نداشته و تمام آن اطلاعات در این داکر نیز در دسترس میباشد.
چطور از bind mount استفاده کنیم
منظور کلی از bind mount استفاده از دایرکتوری موجود بر روی حافظه دستگاه میباشد، که داکر والیوم اطلاعاتش را در آن قرار می دهد. در صورتی که به جای نام والیوم از یک آدرس که در دستگاه خود دارید در دستور ساخت داکر استفاده کنید، میتوانیم اطلاعاتی که در داکر قرار دارد را در آن فایل ببینیم. همچنین اطلاعات خود را به صورت مستقیم در داکر وارد کنیم.
چه بلایی سر داکر والیوم بعد از حذف داکر میآید؟
در صورتی که والیوم ها را خودمان بسازیم بعد از پاک شدن سرور آن ها در سیستم ما میمانند. ما میتوانیم هر زمان دیگری که نیازی به یک داکر مشابه داشته باشیم، با استفاده از این والیوم آن را تولید کنیم.
چرا ابر آراز ؟
سرور ابری ابر آراز پرسرعت ترین سرور ابری با آپتایم 99/99 به شمار میرود که با مبلغی مناسب سریعترین و پرقدرتترین سختافزارهای موجود را به شما ارائه میدهد و امکان مدیریت مستقیم منابع را برای شما فراهم میکند تا تنها به اندازه مصرفتان و به صورت Pay As You Go هزینه پرداخت کنید.