# دليل النشر باستخدام Docker

## 🐳 طريقة سريعة للنشر باستخدام Docker

### المتطلبات
- Docker
- Docker Compose

### الخطوات

#### 1. نسخ ملفات المشروع

```bash
git clone <repository-url>
cd smtp-api-service
```

#### 2. إعداد ملف البيئة

```bash
cp backend/.env.example backend/.env
nano backend/.env
```

#### 3. تعديل docker-compose.yml

عدل متغير النطاق في nginx.conf أو استخدم الإعدادات الافتراضية.

#### 4. تشغيل المشروع

```bash
# بناء وتشغيل
docker-compose up -d --build

# عرض السجلات
docker-compose logs -f

# إيقاف
docker-compose down
```

#### 5. الحصول على SSL

```bash
docker-compose run --rm certbot certonly --webroot -w /var/www/certbot -d your-domain.com
```

### الأوامر المفيدة

```bash
# إعادة بناء
docker-compose up -d --build

# عرض السجلات
docker-compose logs -f backend
docker-compose logs -f nginx

# الدخول للحاوية
docker-compose exec backend bash

# نسخ احتياطي
docker-compose exec backend cp /app/data/smtp_api.db /app/data/backup.db
```

### هيكل المجلدات

```
smtp-api-service/
├── backend/
│   ├── Dockerfile
│   └── ...
├── frontend/
│   └── index.html
├── nginx/
│   └── nginx.conf
├── docker-compose.yml
└── certbot/
    ├── conf/
    └── www/
```
