Skip to content

seelentov/laravel-nextjs-compose

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dockerized Laravel & Next.js Application

Этот репозиторий содержит Docker-образ, предоставляющий готовое решение для запуска Laravel и Next.js приложения в едином окружении.

Ключевые особенности:

  • Laravel: Включает в себя все необходимые компоненты для запуска Laravel-приложения:
    • PHP
    • Composer
    • Laravel
    • Laravel Schedule
  • Next.js: (Опционально) Включает в себя Next.js framework для frontend разработки.
  • База данных: Поддержка как PostgreSQL, так и MySQL.
  • RabbitMQ: Для реализации асинхронных задач.
  • Horizon: Предоставляет простой интерфейс для управления и мониторинга очередей.
  • Telescope: Инструмент для отладки и анализа вашего Laravel приложения.
  • Filament: Мощная административная панель для управления вашим приложением.
  • Nginx: В качестве веб-сервера для обратной проксировки запросов на Laravel и Next.js приложения.
  • Makefile: Предоставляет набор удобных команд для взаимодействия с Docker-образом.

Преимущества:

  • Простота развертывания: Легко установить и запустить приложение в любой среде.
  • Удобство в использовании: Все зависимости установлены и настроены автоматически.
  • Производительность: Оптимизация для максимально возможной производительности.
  • Безопасность: Обеспечивает изоляцию вашего приложения от других систем.
Инструкция по установке:
  1. Клонируйте репозиторий:
git clone https://github.com/seelentov/laravel-nextjs-compose.git
  1. Настройте файл .env:

    • Укажите имя пользователя, пароль и хост для базы данных.
    • Задайте имя вашего приложения.
    • Укажите необходимые настройки для сервисов.
    • Раскоментируйте нужное и закоментируйте лишнее в docker-compose.yml.
  2. Запустите Docker-образ:

make init
  1. Доступ к приложению:

Внутри Makefile есть комментарии с описанием работы каждой функции

Дополнительные возможности:

  • Возможность отключения Next.js и использования Laravel для frontend.
  • Поддержка горячей перезагрузки для быстрой разработки.

*В файле TODO список задач, которые планируется реализовать в будущем, следите за обновлениями