بایگانی شمسی مرداد 1400

تفاوت دستور ADD و COPY در Docker

 

هنگام ایجاد یک Dockerfile، دو دستور ADD و COPY وجود دارد که شما می‌توانید از آن‌ها برای کپی کردن فایل‌ها یا دایرکتوری‌ها در آن استفاده کنید. اگرچه یکسری تفاوت‌های جزئی در محدوده عملکرد این دو دستور وجود دارد، اما اساس کارشان یکسان است.

اکنون این سؤال در ذهن ایجاد می‌شود که پس چرا ما دو دستور داریم و چگونه می‌توان فهمید چه زمانی از یکی یا دیگری استفاده نماییم؟

در این مقاله، هر دستور شرح داده شده و تفاوت آن دو تجزیه و تحلیل شده است. در انتها به شما، آموزش داده می‌شود که از هر دستور بهتر است در چه زمانی استفاده شود.

ادامه‌ی مطلب

رفع خطای "cannot connect to the Docker daemon"

 

برای کاربران جدید Docker ممکن است، در ابتدای کار، استفاده از docker سخت باشد؛ زیرا اغلب بلافاصله پس از نصب با خطاهایی روبرو می‌شوند. خطای "cannot connect to the Docker daemon" در Docker یکی از این خطاهاست. این خطا معمولاً هنگام اجرای دستور docker-compose build رخ می‌دهد.

در این آموزش، دلایل احتمالی خطای "cannot connect to the Docker daemon" و راه‌حل‌های آن بررسی شده است.

ادامه‌ی مطلب

نصب Docker در CentOS 8

 

نسخه جدید CentOS 8 در مقایسه با نسخه قبلی، عناصر نوآورانه زیادی را ارائه کرده است. یکی از تغییرات مهم، تصمیم برای عدم حمایت رسمی از Docker است. در عوض، RHE ابزارهای داخلی را برای ایجاد و مدیریت container image معرفی کرده است. این ابزار‌های داخلی که buildah و podman هستند، با Docker سازگارند؛ اما برای اجرا نیازی به معماری سرور/ کلاینت ندارند.

در این مقاله، با توجه به این تغییر اساسی، نحوه نصب Docker در CentOS 8 شرح داده شده است.

ادامه‌ی مطلب

نحوه راه اندازی و پیکربندی MySQL Docker Container

 

MySQL، یک سیستم مدیریت پایگاه داده رابطه‌ای منبع باز معروف و محبوب برای وب سرور است. این پایگاه داده، داده‌ها را به شیوه‌ای معنی‌دار ذخیره کرده و ساختار می‌دهد و دسترسی آسان را تضمین می‌نماید.

Docker، مجموعه‌ای از محصولات بصورت platform-as-a-service است که از توسعه CI/CD پشتیبانی می‌کند. Docker به کاربران اجازه می‌دهد، برنامه‌هایی را در محیط‌های مجازی که container نامیده می‌شوند، توسعه داده و به کار ببرند. با یک image واحد، Docker می‌تواند، یک برنامه را با همه کتابخانه‌ها و وابستگی‌های آن راه‌اندازی کند.

در این آموزش، نحوه استقرار MySQL Docker container و نحوه شروع کار با پایگاه داده کانتینری شده آموزش داده شده است.

ادامه‌ی مطلب

بازنویسی کردن Entrypoint با استفاده از Docker Run

 

Entrypoint و CMD دستورهایی در Dockerfile هستند که فرایند را در یک Docker image تعریف می‌کنند. بسته به اینکه چگونه می‌خواهید container خود را اجرا نمایید، می توانید از یکی یا هر دو دستور استفاده کنید.

یکی از تفاوت‌های این دو دستور این است که بر خلاف CMD، شما نمی‌توانید دستور ENTRYPOINT را فقط با افزودن پارامترهای خط فرمان جدید بازنویسی نمایید؛ بلکه باید دستور docker run را به همراه یک ساختار خاص تغییر دهید.

در این آموزش، نحوه بازنویسی کردن ENTRYPOINT با استفاده از دستور docker run شرح داده شده است.

ادامه‌ی مطلب

نصب و پیکربندی Greenlight برروی سرور BigBlueButton

 

BigBlueButton ، یک برنامه رایگان و منبع باز برای سیستم عامل لینوکس است که (بصورت تحت وب و بدون نیاز به هیچ برنامه‌ای) امکان ایجاد کلاس‌های مجازی برای ویدیو کنفرانس و وبینار رو فراهم می‌کند. این نرم افزار بر روی کامپیوتر شخصی و لپ‌تاپ قابل نصب نیست و نیاز به سرور مجازی و یا سرور اختصاصی قدرتمند دارد.

BigBlueButton دارای یک محیط ساده و امکانات گرافیکی کم است؛ بدین معنی که اکثر کارها در آن از طریق محیط متنی قابل انجام است. به همین دلیل ماژولی به نام Green Light برای این نرم افزار ارائه شده است که امکانات مطلوبی را در اختیار کاربران BigBlueButton قرار می‌دهد.

ادامه‌ی مطلب

رفع خطای "The Link You Followed Has Expired" در وردپرس

 

پیغام “link you followed has expired”، خطای رایجی است که هنگام بارگذاری قالب‌ها و افزونه‌ها از طریق داشبورد وردپرس رخ می‌دهد.

این خطا معمولاً زمانی رخ می‌دهد که فایل مورد نظر شما برای بارگذاری از محدوده پیش فرض بارگذاری و اجرای تعییین شده توسط وردپرس بیشتر باشد. بهترین راه برای رفع این مشکل، افزایش محدودیت‌های بارگذاری پیش فرض است.

در این راهنما، نحوه رفع خطای “link you followed has expired” در چند مرحله آسان برای شما شرح داده شده است.

ادامه‌ی مطلب

تنظیم محدودیت استفاده از حافظه و CPU در Docker

 

به طور پیش فرض، Docker Containerها به تمام منابع RAM و CPU میزبان دسترسی دارند. این تنظیمات پیش فرض ممکن است منجر به مشکلات عملکردی شود. بدین معنی که اگر حافظه و مصرف CPU را در Docker محدود نکنید، Docker می‌تواند از تمام منابع سیستم استفاده کند.

در این آموزش، نحوه محدود کردن مصرف حافظه و CPU در Docker Container شرح داده شده است.

ادامه‌ی مطلب

استفاده از Traefik به عنوان Reverse Proxy برای Docker Container

 

Docker، به عنوان یک روش کارآمد برای اجرای برنامه‌های تحت وب قابل استفاده است. در صورتی که بخواهید چندین برنامه را در یک میزبان Docker اجرا کنید، شما باید یک پروکسی معکوس (Reverse Proxy) برای آن تنظیم نمایید؛ زیرا تنها باید پورت‌های 80 و 443 را در معرض دید سایر نقاط جهان قرار دهید.

Traefik یک Reverse Proxy برای Docker است که شامل داشبورد نظارت است. در این آموزش، از Traefik به منظور مسیریابی درخواست‌ها به دو container مختلف برنامه وب استفاده شده است. این دو container شامل؛ یک container وردپرس و یک container مربوط به Adminer است که هردو از پایگاه داده MySQL استفاده می‌کنند. با استفاده از Let's Encrypt می‌توانید Traefik را به گونه‌ای پیکربندی نمایید که همه درخواست‌ها را در HTTPS ارائه دهد.

ادامه‌ی مطلب

نحوه نامگذاری یا تغییر نام Docker Containers

 

هنگامی‌که Docker containerها ایجاد می‌شوند، سیستم به طور خودکار یک شماره شناسه منحصر به فرد (UUID) به هر container اختصاص می‌دهد تا از هرگونه تعارض نام‌گذاری جلوگیری کرده و خودکارسازی بدون دخالت انسان را بهبود بخشد.

در این مقاله، نحوه شناسایی آسان Docker containerها و نامگذاری یا تغییر نام آن‌ها در لینوکس شرح داده شده است.

ادامه‌ی مطلب