Files
football-next/REQUIRED_SITES.md

3.5 KiB
Raw Blame History

سایت‌های مورد نیاز برای 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

تنظیم در سرور:

# ویرایش DNS
sudo nano /etc/resolv.conf

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

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

تنظیم Docker Mirror:

sudo nano /etc/docker/daemon.json
{
  "registry-mirrors": [
    "https://docker.iranrepo.ir",
    "https://registry.docker.ir"
  ]
}
sudo systemctl restart docker

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

تنظیم NPM Registry:

npm config set registry https://registry.npmjs.org
# یا
npm config set registry https://npm.iranrepo.ir

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

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

  1. روی سرور خارج یا VPS با IP خارج:
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
  1. انتقال به سرور ایران:
# با scp
scp football-next.tar.gz user@iran-server:/tmp/

# یا آپلود به سرور فایل ایرانی و دانلود روی سرور
  1. Load در سرور ایران:
gunzip -c football-next.tar.gz | docker load
docker images  # بررسی image

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

# تست 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 حجم)