Composer в Docker

Если вы являетесь PHP-разработчиком, я уверен, что вы используете Composer. В этой статье я не буду объяснять, что такое Composer (я предполагаю, что вы это знаете). Но как использовать Composer без установки PHP в операционной системе? Ответ прост — использовать Docker.

Я использую composer в своей системе (в настоящее время Linux Mint 20.3) с помощью следующей команды:

docker run --rm -v $(pwd):/app composer -V
Войти в полноэкранный режим Выйти из полноэкранного режима

Давайте посмотрим, какие параметры у нас есть:

docker run — запускаем образ

--rm — мы удаляем образ из памяти после того, как он закончит работу

-v $(pwd):/app — мы отображаем текущий каталог (pwd) на каталог /app внутри контейнера docker

composer — запускаем образ composer (это имя образа)

-V — проверяем версию composer (это необязательно, я сделал это для проверки работоспособности composer).

Когда мы выполним приведенную выше команду, composer начнет работать. Сначала docker проверит, присутствует ли образ в локальной системе. Если да, Docker запустит его, если нет, Docker загрузит его. Поэтому, когда вы будете выполнять эту команду в первый раз, загрузка образа может занять некоторое время, но в дальнейшем выполнение команды будет происходить очень быстро.

С этого момента каждый раз, когда вы хотите использовать composer, вы можете выполнить вышеуказанную команду. Я знаю, я знаю, я слышу ваш возглас: Что это значит? Должен ли я каждый раз использовать эту длинную команду?

Нет, не стоит. Вы можете сделать псевдоним в вашей системе. Откройте файл .bashrc из вашего домашнего каталога и добавьте в конец этого файла эти строки:

#my aliases
alias composer='docker run --rm -v $(pwd):/app composer'
Войти в полноэкранный режим Выйти из полноэкранного режима

Теперь, когда вы будете набирать composer в терминале, composer будет запускаться. Конечно, после сохранения файла .bashrc вам придется закрыть терминал (он был открыт) и открыть его снова, чтобы загрузить новые настройки из файла .bashrc.

ВНИМАНИЕ! Файл .bashrc является скрытым!

Давайте попробуем привести пример из реальной жизни. В этом примере я установлю приложение Laravel, но это только пример.

Сначала давайте клонируем репозиторий Laravel:

git clone https://github.com/laravel/laravel.git laravelapp/
Войти в полноэкранный режим Выйти из полноэкранного режима

Мы клонировали все файлы Laravel в наш локальный каталог laravelapp. Далее мы изменим каталог на laravelapp:

cd laravelapp
Войдите в полноэкранный режим Выйти из полноэкранного режима

Теперь мы готовы к установке пакетов производителя с помощью этой команды:

composer install

#or if we didn't create alias:
docker run --rm -v $(pwd):/app composer install
Войти в полноэкранный режим Выйти из полноэкранного режима

Мы увидим, что composer начнет загрузку пакетов:

Или, конечно, когда вы будете использовать другие команды, composer будет работать, например:

composer require laravelcollective/html
Войти в полноэкранный режим Выйти из полноэкранного режима

Эта команда установит пакет laravelcollective в ваше приложение Laravel.

Все просто? Расскажите мне в комментариях, что вы думаете.


Будет здорово, если вы прокомментируете или последуете за мной в социальных сетях:

Также вы можете посетить мои сайты:

  • Linux блог
  • Сайт веб-агентства

Оцените статью
devanswers.ru
Добавить комментарий