Руководство для начинающих по миграции баз данных с помощью Docker и Laravel’s Artisan

Вы новичок в веб-разработке и хотите знать, как выполнить миграцию базы данных с помощью Docker и команды Artisan в Laravel? Что ж, вы попали по адресу! В этой статье мы рассмотрим различные методы выполнения миграции в разговорной форме, дополненные примерами кода. Итак, приступим!

Во-первых, убедитесь, что на вашем компьютере установлены Docker и Laravel. Как только это будет сделано, откройте терминал и перейдите в корневой каталог вашего проекта Laravel. Теперь давайте начнем с методов:

Метод 1. Использование интерфейса командной строки Docker

Если вы предпочитаете использовать Docker CLI напрямую, вы можете запустить следующую команду:

docker run --rm -v $(pwd):/app -w /app php artisan migrate

Здесь docker runзапускает новый контейнер Docker, --rmудаляет контейнер после выхода, -v $(pwd):/appмонтирует текущий каталог в /appвнутри контейнера, а -w /appустанавливает рабочий каталог /appвнутри контейнера. Наконец, php artisan migrateвыполняет команду миграции.

Метод 2. Использование Docker Compose

Если для вашего проекта Laravel настроена конфигурация Docker Compose, вы можете добавить следующее определение службы в файл docker-compose.yml:

services:
  app:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - .:/app
    working_dir: /app
    command: php artisan migrate

В этом методе мы определяем службу с именем app, которая создает образ Docker, используя указанный Dockerfile. Раздел volumesмонтирует текущий каталог в /appвнутри контейнера, а working_dirустанавливает рабочий каталог в /app. Наконец, commandвыполняет команду миграции.

Метод 3: использование псевдонима оболочки

Чтобы сэкономить время на вводе текста, вы можете создать псевдоним оболочки, чтобы упростить команду. Откройте файл конфигурации оболочки (например, .bashrcили .zshrc) и добавьте следующую строку:

alias migrate="docker run --rm -v $(pwd):/app -w /app php artisan migrate"

Теперь вы можете просто запустить migrateсо своего терминала, и он выполнит команду миграции в контейнере Docker.

Метод 4: использование Makefile

Если вы предпочитаете использовать Makefile, вы можете создать его в корневом каталоге вашего проекта со следующим содержимым:

migrate:
    docker run --rm -v $(shell pwd):/app -w /app php artisan migrate

Теперь вы можете запустить make migrateсо своего терминала, чтобы выполнить команду миграции.

В заключение мы рассмотрели несколько методов выполнения миграции базы данных с помощью Docker и команды Artisan в Laravel. Независимо от того, предпочитаете ли вы использовать Docker CLI, Docker Compose, псевдонимы оболочки или Makefile, существует множество способов добиться одного и того же результата. Выберите метод, который подходит вашему рабочему процессу, и приступайте к миграции!

Не забывайте регулярно выполнять миграцию базы данных, чтобы поддерживать актуальность схемы базы данных вашего приложения и обеспечивать бесперебойную работу.

Удачного программирования!