Чтобы создать проект на Laravel Sail с БД PostgreSQL, вам потребуется выполнить несколько шагов.
Шаг 1: Установка Docker и Laravel Sail
Сначала убедитесь, что у вас установлен Docker на вашем компьютере. Затем установите Laravel Sail, интегрированный докер-компоуз проекта Laravel. Вы можете установить Laravel Sail, выполнив следующую команду в терминале:
composer require laravel/sail --dev
Шаг 2: Создание нового проекта Laravel Sail
Создайте новый проект Laravel Sail с помощью следующей команды:
php artisan sail:install
Эта команда настроит Laravel Sail и создаст файл docker-compose.yml
в корневой папке вашего проекта.
Шаг 3: Конфигурация БД PostgreSQL
Откройте файл docker-compose.yml
, созданный в предыдущем шаге, и найдите раздел services
. В этом разделе вы можете конфигурировать контейнеры Docker, включая PostgreSQL.
Добавьте следующий код в раздел services
, чтобы настроить контейнер PostgreSQL:
services: postgres: image: postgres:12 ports: - '${FORWARD_DB_PORT:-5432}:5432' environment: POSTGRES_PASSWORD: '${DB_PASSWORD:-secret}' POSTGRES_USER: '${DB_USERNAME:-postgres}' POSTGRES_DB: '${DB_DATABASE:-laravel}'
В этом примере используется официальный образ PostgreSQL версии 12. Вы можете настроить порт и учетные данные, используя переменные окружения.
Шаг 4: Запуск проекта с БД PostgreSQL
Чтобы запустить проект с БД PostgreSQL, выполните следующую команду:
sail up -d
Эта команда запустит контейнеры Docker, включая контейнер PostgreSQL в фоновом режиме.
Шаг 5: Настройка Laravel для использования PostgreSQL
Откройте файл .env
в корневой папке вашего проекта и внесите следующие изменения:
DB_CONNECTION=pgsql DB_HOST=postgres DB_PORT=5432 DB_DATABASE=laravel DB_USERNAME=postgres DB_PASSWORD=secret
В этом примере мы используем значения по умолчанию для имени пользователя и пароля, которые были определены в docker-compose.yml
. Если вы изменили эти значения, убедитесь, что они соответствуют вашему конфигурации.
Шаг 6: Запуск миграций и тестирование
Теперь, когда ваш проект настроен с БД PostgreSQL, вы можете запустить миграции, чтобы создать необходимые таблицы:
sail artisan migrate
Вы также можете запустить свои тесты, чтобы убедиться, что ваш проект работает корректно с использованием БД PostgreSQL:
sail test
Это детальный процесс создания проекта Laravel Sail с БД PostgreSQL. Убедитесь, что вы установили Docker и Laravel Sail, настроили контейнер PostgreSQL и обновили файл .env
с правильными параметрами, чтобы ваш проект успешно работал с БД PostgreSQL.