با انتخاب روش آلپاین، چربی تصاویر داکر خود را کاهش دهید.
اندازه یک تصویر Docker بر زمان اجرا و عملکرد برنامه شما تأثیر می گذارد. ظروف کوچک سریعتر کار می کنند، مدیریت آنها راحت تر است و فضای دیسک کمتری را اشغال می کنند.
راه های مختلفی برای کاهش اندازه تصاویر داکر وجود دارد. به طور خاص، می توانید از تصاویر آلپاین لینوکس استفاده کنید که بسیار کوچکتر از بقیه هستند.
با Alpine اندازه یک تصویر داکر موجود را کاهش دهید
یک تصویر داکر یک الگو با دستورالعملهایی در مورد نحوه ساخت کانتینر داکر است. همه چیزهایی که برای راه اندازی و اجرای یک برنامه نیاز دارید را دارد. این ممکن است شامل وابستگی ها، دستورات و حتی متغیرهای محیطی باشد.
دو راه برای کاهش تصاویر Docker با تصاویر Alpine وجود دارد. یکی با کشیدن یک نسخه Alpine از تصویر، و دوم با ویرایش Dockerfile برای استفاده از یک تصویر Alpine.
تصویر داکر را از داکر هاب بکشید
بیایید یک تصویر Nginx Docker را بکشیم و سپس اندازه آن را کاهش دهیم. به رجیستری Docker بروید. از تصاویر رسمی Docker، یک تصویر Nginx را با دستور زیر بکشید:
docker pull nginx
دستور زیر را روی ترمینال اجرا کنید تا بررسی کنید که آیا تصویر در سیستم شما وجود دارد یا خیر.
docker image ls
توجه کنید حجم تصویر دانلود شده Nginx 142 مگابایت است. در مرحله بعد، بیایید اندازه این تصویر را با استفاده از یک Image Linux Alpine کاهش دهیم.
آلپاین لینوکس یک توزیع بسیار کوچک است، بنابراین تصاویر مبتنی بر آن کوچک و همچنین ساده و امن هستند. رجیستری Docker را برای نسخه تصویر Nginx با تگ Alpine بررسی کنید.
سپس دستور زیر را در ترمینال اجرا کنید:
docker pull nginx:stable-alpine
توجه داشته باشید که اکنون اندازه آن کوچکتر است، تقریباً یک چهارم تصویر اولیه.
Dockerfile را برای استفاده از تصاویر Alpine ویرایش کنید
همچنین، Dockerfile یک برنامه موجود را برای استفاده از تصویر Alpine ویرایش کنید.
FROM python: alpine
ENV PYTHONUNBUFFERED 1
WORKDIR /app
ADD . /app/
در مرحله بعد، هنگامی که تصویر را با یک تصویر آلپاین می سازید، متوجه خواهید شد که اندازه تصویر پایتون کاهش یافته است.
چرا از تصاویر آلپاین استفاده کنیم؟
از تصاویر Alpine برای کاهش سریع اندازه تصاویر Docker استفاده کنید. داکر استفاده از چنین تصاویر رسمی را برای موارد استفاده رایج توصیه می کند.
یک تصویر آلپاین لینوکس کانتینرهای کوچک قابل مدیریتی را هم در توسعه و هم در تولید ایجاد می کند. کشیدن، پیکربندی و استفاده از آن آسان است.
در عین حال، به ساخت و استقرار برنامه های کاربردی سبک وزن در تمام پلتفرم ها کمک می کند. جای تعجب نیست که Alpine یک توزیع لینوکس مورد علاقه توسعه دهندگان در پلتفرم Docker است.