Files
getgreen-backend/deployment_guide.md
2026-04-15 20:03:19 +05:00

2.2 KiB

Production Deployment Guide

Ushbu yo'riqnoma local o'zgarishlarni (MinIO va API ulanishlari) serverga (Production) ko'chirish uchun kerakli qadamlarni o'z ichiga oladi.

1. Backend (Laravel) - api.quyoshli.uz

Serverga kirib, loyiha papkasida quyidagi ishlarni bajaring:

.env faylini yangilash

Production serverda local MinIO emas, balki haqiqiy masofaviy MinIO ma'lumotlari bo'lishi kerak:

FILESYSTEM_DISK=s3
AWS_USE_PATH_STYLE_ENDPOINT=false

MINIO_ACCESS_KEY=1121RspAhfuxdjqCrkXH
MINIO_SECRET_KEY=97rvdUg266dIAseFKeJ3l2cHRavRmCrhEDQTvaDH
MINIO_BUCKET=quyoshli
MINIO_ENDPOINT=https://minio.quyoshli.uz

Important

Masofaviy MinIO-da AWS_USE_PATH_STYLE_ENDPOINT=false bo'lishi mumkin (sozlamaga qarab), lekin odatda HTTPS endpointlar uchun false ishlatiladi.

Buyruqlar ketma-ketligi

# Kodni yangilash
git pull origin main

# Bog'liqliklarni o'rnatish
composer install --no-dev --optimize-autoloader

# Ma'lumotlar bazasini yangilash
php artisan migrate --force

# Keshni tozalash va optimizatsiya
php artisan optimize
php artisan config:cache
php artisan view:cache

# Frontend assetlarni yig'ish (agar Laravel Vite ishlatilsa)
npm install
npm run build

Ruxsatnomalar (Permissions)

Serverda papkalarga to'g'ri ruxsat berish juda muhim:

sudo chown -R www-data:www-data storage bootstrap/cache public/uploads
sudo chmod -R 775 storage bootstrap/cache public/uploads

2. Frontend (Next.js) - getgreen.uz

Frontend loyihasida .env faylini quyidagicha sozlashingiz kerak:

.env fayli

API_URL=https://api.quyoshli.uz/api
PORT=3000

Qayta qurish (Rebuild)

Agar Docker ishlatayotgan bo'lsangiz:

docker-compose up -d --build

Agar Docker-siz bo'lsa:

npm install
npm run build
pm2 restart all # yoki boshqa process manager

3. MinIO Sozlamalari (Masofaviy)

Masofaviy MinIO serveringizda quyoshli bucket-i yaratilganiga va ruxsatnomalari (Policy) to'g'ri sozlanganiga ishonch hosil qiling:

  • Rasmlar hamma uchun ochiq bo'lishi uchun Bucket Policy-ni Public yoki Read-only qilib sozlash tavsiya etiladi.

Tip

Agar rasmlar production-da ko'rinmasa, .env faylidagi AWS_USE_PATH_STYLE_ENDPOINT qiymatini true yoki false qilib almashtirib ko'ring.