
زیرساخت ارتباطات و فناوری اطلاعات
داکر در مرکز اکوسیستم مدرن کانتینر قرار دارد، اما موفقیت آن به استانداردهای باز و پروژههای جامعهمحور وابسته است که پشت صحنه فعالیت میکنند. این مقاله تاریخچه شرکت داکر، نحوه کارکرد پلتفرم داکر و نقش OCI، CNCF و پروژه Moby را در شکلدهی فناوری کانتینر توضیح میدهد.
راههای متعددی برای راهاندازی داکر روی سیستم وجود دارد؛ از Docker Desktop با امکانات کامل گرفته تا نصب سبکتر روی ماشین مجازی یا مستقیم روی لینوکس. این مقاله گزینههای اصلی نصب و نحوه بررسی عملکرد صحیح داکر را بررسی میکند.
Docker Engine بهجای یک برنامه یکپارچه بزرگ، از اجزای کوچک و تخصصی متعددی ساخته شده است. این مقاله بررسی میکند که containerd، runc و shim چگونه در کنار هم کانتینرها را میسازند و اجرا میکنند، و چطور Open Container Initiative این معماری را شکل داد.
ایمیج داکر یک بسته فقطخواندنی است که تمام آنچه یک برنامه برای اجرا نیاز دارد را در خود جای میدهد و از چند لایه انباشتهشده تشکیل میشود، نه یک فایل واحد. این مقاله نحوه کارکرد ایمیجها، سازوکار نامگذاری و تگزنی، و دلیل اهمیت بیشتر دایجست نسبت به تگ را بررسی میکند.
کانتینرها نمونههای اجرایی سبکوزنی از ایمیجها هستند که رفتاری کاملاً متفاوت از ماشینهای مجازی دارند، هرچند هر دو برای ایزولهسازی و اجرای برنامهها به کار میروند. این مقاله این دو مدل را مقایسه میکند و نحوه راهاندازی، بررسی، دیباگ و اعمال سیاستهای ریستارت روی کانتینرها با داکر را توضیح میدهد.
تبدیل کد منبع یک برنامه به ایمیج کانتینری قابل اجرا، در داکر از یک فرآیند پنجمرحلهای ثابت پیروی میکند. این مقاله نوشتن Dockerfile، ساخت ایمیج، ارسال آن به رجیستری و اجرای آن بهعنوان کانتینر را با استفاده از یک اپلیکیشن ساده Node.js بررسی میکند.
ایمیجهای کانتینری بزرگ به معنای استقرار کندتر و سطح حمله بزرگتر هستند. این مقاله توضیح میدهد که ساخت چندمرحلهای (Multi-Stage Build) چگونه ایمیجهای نهایی را سبک نگه میدارد، و Buildx و BuildKit چطور امکان ساخت همزمان ایمیج برای چند معماری CPU را فراهم میکنند.
برنامههای مدرن اغلب از چند سرویس بههممتصل ساخته میشوند، نه یک کانتینر واحد، که این موضوع استقرار دستی را پیچیده و مستعد خطا میکند. این مقاله توضیح میدهد که Docker Compose چگونه با استفاده از یک فایل YAML ساده، یک اپلیکیشن چندکانتینری را تعریف، مستقر و مدیریت میکند، آن هم با یک دستور واحد.
Docker Model Runner امکان اجرای مستقیم مدلهای هوش مصنوعی روی سختافزار میزبان را فراهم میکند، بهجای اجرای آنها داخل کانتینر، و این کار دسترسی سریعتری به GPU میدهد در حالی که همچنان کاملاً با اکوسیستم داکر یکپارچه است. این مقاله نحوه کارکرد آن، دریافت و تست مدلها و اتصال آن به اپلیکیشنهای چتبات مبتنی بر Compose را بررسی میکند.
WebAssembly (Wasm) بهعنوان جایگزینی سبکوزن برای کانتینرهای سنتی در حال ظهور است، و داکر اکنون از ساخت، اشتراکگذاری و اجرای اپلیکیشنهای Wasm با ابزارهای آشنا پشتیبانی میکند. این مقاله نوشتن یک اپلیکیشن ساده Wasm با Spin، کانتینری کردن آن با داکر و اجرای آن بهعنوان کانتینر Wasm را بررسی میکند.
Docker Swarm گروهی از نودهای داکر را به یک کلاستر امن و بسیار در دسترس با قابلیت ارکستریشن داخلی تبدیل میکند. این مقاله ساخت یک swarm چندنودی، استقرار یک اپلیکیشن میکروسرویس بهصورت اعلانی و انجام بهروزرسانیهای تدریجی بدون از دست دادن سازگاری با وضعیت مطلوب را بررسی میکند.
شبکهسازی در داکر بر پایه یک طراحی باز به نام Container Network Model ساخته شده که توسط libnetwork پیادهسازی و با درایورهای قابلجایگزینی گسترش مییابد. این مقاله تئوری پشت شبکه داکر را بررسی کرده و نحوه ساخت و تست شبکههای bridge تکهاست، از جمله تفکیک نام و نگاشت پورت را توضیح میدهد.