ساخت و استقرار یک تصویر و کانتینر Docker

20/12/2023 |
Loading...

این راهنما شما را در فرآیند کانتینری‌سازی یک برنامه با استفاده از Docker راهنمایی می‌کند. شما یک Dockerfile خواهید نوشت، تصویر را خواهید ساخت، آن را به عنوان یک کانتینر اجرا خواهید کرد و به صورت اختیاری آن را به Docker Hub push خواهید کرد.


مرحله 1: ایجاد یک Dockerfile

در ریشه پروژه خود، یک فایل بدون پسوند ایجاد کنید.Dockerfile

مثال (برنامه Flask پایتون):

# تصویر پایه FROM python:3.10-slim  # تنظیم دایرکتوری کاری WORKDIR /app  # کپی تمام فایل‌های پروژه COPY . .  # نصب وابستگی‌ها RUN pip install --no-cache-dir -r requirements.txt  # در معرض گذاشتن پورت برنامه EXPOSE 5000  # دستور برای اجرای برنامه CMD ["python", "app.py"] 

برای زبان‌های دیگر مانند Node.js یا Java، تصویر پایه و دستورات را تنظیم کنید.


مرحله 2: ساخت تصویر Docker

ترمینال خود را باز کنید، به دایرکتوری پروژه خود بروید و اجرا کنید:

docker build -t my-app-image . 
  • -t my-app-image: تصویر را برای مرجع آسان تگ می‌کند.

  • .: به دایرکتوری فعلی حاوی Dockerfile اشاره می‌کند.


مرحله 3: اجرای کانتینر Docker

docker run -d -p 5000:5000 --name my-app-container my-app-image 
  • -d: در حالت detached اجرا می‌شود (در پس‌زمینه).

  • -p 5000:5000: پورت میزبان را به پورت کانتینر مپ می‌کند.

  • --name: به کانتینر یک نام سفارشی می‌دهد.


مرحله 4: بررسی کانتینر

برای تأیید اجرای آن:

docker ps 

به برنامه خود با مراجعه به آدرس زیر دسترسی پیدا کنید:

http://localhost:5000 

(اختیاری) مرحله 5: توقف و حذف

کانتینر را متوقف کنید:

docker stop my-app-container 

کانتینر را حذف کنید:

docker rm my-app-container 

تصویر را حذف کنید:

docker rmi my-app-image 

(اختیاری) مرحله 6: Push به Docker Hub

  1. به Docker وارد شوید:

    docker login 
  2. تصویر را تگ کنید:

    docker tag my-app-image yourusername/my-app-image 
  3. تصویر را push کنید:

    docker push yourusername/my-app-image 

اکنون می‌توانید این تصویر را در هر جایی با دستور زیر pull کنید:

docker pull yourusername/my-app-image 

نتیجه‌گیری

با استفاده از Docker، شما برنامه خود را در یک کانتینر سبک‌وزن و قابل حمل بسته‌بندی کرده‌اید که به طور یکسان در تمام محیط‌ها اجرا می‌شود. چه در حال استقرار محلی، در محیط staging یا production باشید، Docker تضمین می‌کند که برنامه شما در همه جا یکسان رفتار می‌کند. این رویکرد توسعه، تست و استقرار را ساده‌تر می‌کند و گردش کار شما را سریع‌تر و قابل اعتمادتر می‌سازد.

دریافت پیشنهادات و تخفیف‌های ویژه!

از جدیدترین تخفیف‌ها، آفرها و پیشنهادات ویژه باخبر شوید.

Update cookies preferences