# سایت‌های مورد نیاز برای Build و Deploy

## سایت‌های اصلی که باید باز باشند:

### ۱. برای Docker Build
```
registry.hub.docker.com (Docker Hub)
registry-1.docker.io
production.cloudflare.docker.com
```

### ۲. برای NPM Packages
```
registry.npmjs.org
registry.npmjs.com
```

### ۳. برای Prisma (مشکل اصلی!)
```
binaries.prisma.sh
binaries.prismacdn.com
```

### ۴. برای Node.js Base Image
```
hub.docker.com
```

## راه‌حل‌ها برای دسترسی محدود:

### گزینه ۱: استفاده از Shecan یا Electro DNS (ساده‌ترین)
این DNS‌ها معمولاً دسترسی به سایت‌های فنی رو باز می‌کنند:

**Shecan:**
- Primary: `178.22.122.100`
- Secondary: `185.51.200.2`

**Electro:**
- Primary: `78.157.42.100`
- Secondary: `78.157.42.101`

**تنظیم در سرور:**
```bash
# ویرایش DNS
sudo nano /etc/resolv.conf

# اضافه کردن
nameserver 178.22.122.100
nameserver 185.51.200.2
```

### گزینه ۲: استفاده از Docker Registry Mirror ایرانی

**تنظیم Docker Mirror:**
```bash
sudo nano /etc/docker/daemon.json
```

```json
{
  "registry-mirrors": [
    "https://docker.iranrepo.ir",
    "https://registry.docker.ir"
  ]
}
```

```bash
sudo systemctl restart docker
```

### گزینه ۳: استفاده از NPM Registry ایرانی

**تنظیم NPM Registry:**
```bash
npm config set registry https://registry.npmjs.org
# یا
npm config set registry https://npm.iranrepo.ir
```

### گزینه ۴: Build کامل روی سیستم خارج (توصیه می‌شود)

اگر هیچ‌کدام کار نکرد، بهترین راه:

1. **روی سرور خارج یا VPS با IP خارج:**
```bash
git clone https://mugit.ir/alisaeed/football-next.git
cd football-next

docker build -t football-next:latest \
  --build-arg DATABASE_URL="postgresql://user:pass@host:5432/db" \
  --build-arg NEXTAUTH_URL="https://yourdomain.com" \
  --build-arg NEXTAUTH_SECRET="your-secret-min-32-chars" \
  .

docker save football-next:latest | gzip > football-next.tar.gz
```

2. **انتقال به سرور ایران:**
```bash
# با scp
scp football-next.tar.gz user@iran-server:/tmp/

# یا آپلود به سرور فایل ایرانی و دانلود روی سرور
```

3. **Load در سرور ایران:**
```bash
gunzip -c football-next.tar.gz | docker load
docker images  # بررسی image
```

## تست دسترسی به سایت‌ها:

```bash
# تست DNS و دسترسی
ping registry.npmjs.org
ping binaries.prisma.sh
curl -I https://registry.npmjs.org
curl -I https://binaries.prisma.sh
```

## اگر Coolify استفاده می‌کنید:

Coolify خودش Docker build می‌گیره، پس نیاز به تنظیمات زیر داره:

1. **تنظیم DNS سرور** (Shecan یا Electro)
2. **تنظیم Docker Registry Mirror**
3. **یا استفاده از Pre-built Image**

### استفاده از Pre-built Image در Coolify:

1. Image رو روی Docker Hub یا Registry خصوصی push کنید
2. در Coolify به جای Git، از "Docker Image" استفاده کنید
3. آدرس image رو وارد کنید: `your-username/football-next:latest`

## خلاصه توصیه:

**برای سرور ایران بدون VPN:**
1. تنظیم Shecan DNS
2. تنظیم Docker Mirror ایرانی
3. اگر کار نکرد → Build روی سرور خارج و انتقال Image

**سریع‌ترین راه:**
Build روی سرور خارج و انتقال Image (یک بار 200-300MB حجم)
