====================================================================== 📘 TITLE: 🛠️ ГАЙД: ГЕНЕРАЦИЯ REST API НА FASTAPI И DOCKER ЧЕРЕЗ GEMINI 🛠️ | АВТОВЫДАЧА 📂 CATEGORY: Google Gemini 📄 FILENAME: gayd_generatsiya_rest_api_na_fastapi_i_docker_cherez_gemini_avtov_guide.txt ====================================================================== 🛠️ ГАЙД: АВТОМАТИЧЕСКАЯ ГЕНЕРАЦИЯ BACKEND-СЕРВИСОВ (FASTAPI + POSTGRESQL + DOCKER) В GEMINI 2.0 🛠️ 🔹 ВВЕДЕНИЕ: Gemini 2.0 Flash генерирует чистую архитектуру бекенда на FastAPI с асинхронными эндпоинтами, валидацией Pydantic V2, миграциями Alembic и готовыми Docker-контейнерами за один запрос. 🔹 ШАГ 1: ПРОМПТ ДЛЯ ГЕНЕРАЦИИ МИКРОСЕРВИСА ``` Сгенерируй production-ready REST API сервис на FastAPI для системы бронирования отелей. Требования: 1. Модели базы данных (SQLAlchemy 2.0 Async): User, Hotel, Booking. 2. CRUD эндпоинты с пагинацией, фильтрацией и JWT-авторизацией. 3. Схемы Pydantic V2 для запросов и ответов. 4. Оптимизированный мультистейдж Dockerfile на базе python:3.12-slim. 5. docker-compose.yml с сервисами: fastapi_app, postgres_db, redis_cache. ``` 🔹 ШАГ 2: ПРИМЕР СГЕНЕРИРОВАННОГО DOCKERFILE ```dockerfile FROM python:3.12-slim as builder WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt FROM python:3.12-slim WORKDIR /app COPY --from=builder /usr/local/lib/python3.12/site-packages /usr/local/lib/python3.12/site-packages COPY . . EXPOSE 8000 CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"] ``` 🔹 ШАГ 3: DOCKER-COMPOSE КОНФИГУРАЦИЯ ```yaml version: '3.8' services: app: build: . ports: - "8000:8000" environment: - DATABASE_URL=postgresql+asyncpg://user:pass@db:5432/booking_db depends_on: - db db: image: postgres:16-alpine environment: POSTGRES_USER: user POSTGRES_PASSWORD: pass POSTGRES_DB: booking_db volumes: - pgdata:/var/lib/postgresql/data volumes: pgdata: ``` 💡 Если у вас возникнут любые вопросы по выполнению шагов из этого гайда — напишите в чат заказа, я с радостью подскажу!