🚀 راهنمای مبتدی Docker – Community Dev

📌 1. مقدمه: داکر چیست؟
مفهوم داکر و کانتینر
Docker سکویی است که به برنامه های کاربردی در محیط های جدا شده به نام ظروف امکان پذیر است. ظروف شامل تمام وابستگی های مورد نیاز برای عملکرد برنامه و اطمینان از عملکرد یکپارچه در سیستم عامل های مختلف است.
مزایای ظروف:
- مستقل از سکو.
- راه اندازی سریع و خاموش کردن.
- سبک وزن در مقایسه با ماشینهای مجازی.
- تکرار و توزیع آسان است.
🛠 2. شروع با Dockerfile
Dockerfile یک اسکریپت است که برای ایجاد تصاویر Docker استفاده می شود. این شامل دستورالعمل هایی است که از کدام تصویر پایه استفاده می شود ، چگونه باید وابستگی ها نصب شود و چگونه برنامه باید اجرا شود.
📝 مثال اساسی Dockerfile (برنامه node.js)
# Using the official Node.js image as the base
FROM node:18-alpine
# Set the working directory
WORKDIR /app
# Copy dependencies and install them
COPY package.json .
RUN npm install
# Copy application files
COPY . .
# Start the application
CMD ["node", "server.js"]
🔍 مؤلفه های کلیدی Dockerfile
-
FROM
: تصویر پایه را مشخص می کند. -
WORKDIR
: فهرست کار را تنظیم می کند. -
COPY
: پرونده ها را در ظرف کپی کنید. -
RUN
: یک فرمان را در ترمینال اجرا می کند (به عنوان مثال ،npm install
). -
CMD
: هنگام شروع کانتین ، دستور اجرا را تعریف می کند.
🏗 نحوه ساخت یک تصویر docker
برای ساختن یک تصویر داکر ، دستور زیر را اجرا کنید:
docker build -t my-node-app .
این دستور تصویری به نام ایجاد می کند my-node-app
با استفاده از Dockerfile
در فهرست فعلی
🚀 3. مدیریت چندین سرویس با آهنگسازی Docker
Docker Compose ابزاری برای مدیریت چندین سرویس به طور همزمان است. به عنوان مثال ، ما می توانیم یک برنامه node.js را در کنار یک پایگاه داده postgresql اجرا کنیم.
📄 مثال docker-compose.yml
پرونده
version: '3.8'
services:
app:
build: .
ports:
- "3000:3000"
depends_on:
- db
db:
image: postgres:latest
environment:
POSTGRES_USER: user
POSTGRES_PASSWORD: password
POSTGRES_DB: mydatabase
▶ اجرای برنامه با آهنگسازی
docker-compose up -d
این دستور هم برنامه و هم پایگاه داده را در پس زمینه شروع می کند (-d
پرچم).
🌍 4. در حال اجرا و مدیریت ظروف داکر
دستورات کلیدی برای اجرای ، توقف و مدیریت ظروف داکر:
📌 لیست در حال اجرا و تمام ظروف
docker ps # Lists running containers
docker ps -a # Lists all containers (running + stopped)
🛑 شروع و متوقف کردن یک ظرف
docker start
docker stop
🔄 راه اندازی مجدد یک ظرف
docker restart
🗑 حذف یک ظرف
docker rm
🧹 تمیز کردن ظروف و تصاویر بلااستفاده
docker system prune -a
📝 مشاهده سیاهههای کانتینر
docker logs
🔍 اشکال زدایی در داخل یک ظرف
docker exec -it sh
این دستور به شما امکان می دهد به پوسته داخل یک ظرف در حال اجرا دسترسی پیدا کنید.
🌐 مدیریت شبکه های کانتینر
docker network ls # Lists existing networks
docker network create my_network # Creates a new network
docker network connect my_network # Connects a container to a network
docker network disconnect my_network # Removes a container from a network
🚀 نتیجه گیری و خلاصه
✅ Docker یک فناوری کانتینر است که توسعه نرم افزار را ساده می کند و استقرار را تسریع می کند.
dockerfile برنامه های کاربردی را قادر می سازد تا در یک محیط جدا شده اجرا شوند.
✅ Docker Compose ابزاری قدرتمند برای مدیریت چندین سرویس است و به ویژه برای معماری های میکروسرویس مفید است.
✅ ظروف داکر انعطاف پذیر ، به راحتی مقیاس پذیر و قابل حمل هستند.
✅ یادگیری دستورات اصلی مدیریت کانتینر به توسعه دهندگان این امکان را می دهد تا کاربردهای خود را به طور کارآمد انجام دهند.
💡 نکته: با کاوش در ادغام CI/CD برای استقرار خودکار ، گردش کار Docker خود را تقویت کنید! 🚀