Как установить и использовать Composer на Ubuntu 22.04
Composer — это инструмент управления зависимостями в PHP; в отличие от «apt» и «yum», это не менеджер пакетов. Поскольку он обрабатывает зависимости для проектов PHP для каждого проекта, вы можете объявлять, управлять и устанавливать зависимости с помощью Composer для любого проекта PHP, работающего под управлением PHP версии 7.2.5 или выше.
Он используется в Magento для управления его компонентами и зависимостями. Композитор использует файл composer.json, в котором указана информация о версии и зависимости. В этом руководстве вы установите PHP 8.1 и Composer на Ubuntu 22.04 и опробуете команды Composer. Давайте начнем.
Предпосылки#
- Сервер с Ubuntu 22.04 в качестве ОС
- Права пользователя: пользователь root или обычный пользователь с привилегиями sudo
Обновите систему#
Свежая установка Ubuntu 22.04 требует обновления пакетов до последних доступных версий.
sudo apt-get update -y && sudo apt-get upgrade -y
Установите PHP 8.1#
Ubuntu 22.04 поставляется с PHP 8.1 в качестве версии PHP по умолчанию. Запустите эту команду ниже, чтобы установить PHP 8.1 и его необходимые расширения.
sudo apt install php-cli unzip
Скачайте и установите Composer#
Composer устанавливается с помощью сценария composer-setup.php, который мы сначала загрузим в /tmp, проверим его, а затем запустим сценарий для установки Composer.
Сначала запустите команду для загрузки скрипта в /tmp/composer-setup.php:
curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.php
Далее мы получим подпись Composer и сохраним ее в системной переменной HASH с помощью:
HASH=`curl -sS https://composer.github.io/installer.sig`
Теперь, чтобы убедиться, что сценарий установки безопасен для запуска, выполните следующий код:
php -r "if (hash_file('SHA384', '/tmp/composer-setup.php') === '$HASH') < echo 'Installer verified'; >else < echo 'Installer corrupt'; unlink('composer-setup.php'); >echo PHP_EOL;"
Если вы получаете этот вывод, установка безопасна для запуска. Установщик проверен Теперь вы можете выполнить скрипт установки, который мы ранее загрузили в /tmp/composer-setup.php, чтобы установить composer для всей системы в каталог /usr/local/bin с помощью команды:
sudo php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer
Чтобы проверить, прошла ли установка успешно, просто запустите:
Composer также можно установить локально в каталог проекта или в домашний каталог пользователя. Например, если вы хотите установить Composer в домашний каталог пользователя dev, вам нужно будет перейти в его каталог и выполнить следующую команду от имени пользователя dev.
curl -sS https://getcomposer.org/installer | php
Теперь вы можете запустить composer командой:
И вы получите такой же результат, как и раньше.
Использование Composer в проекте PHP#
Теперь, чтобы использовать Composer в проекте PHP, вы создадите каталог для своего проекта и добавите зависимости PHP, используя composer. В этом руководстве мы будем использовать пакет Monolog для отправки журналов в файлы, сокеты, базы данных и различные веб-сервисы.
Теперь, чтобы создать каталог monolog и добавить пакет Monolog, используйте следующее:
mkdir monolog && cd monolog && composer require monolog/monolog
Теперь вы можете перечислить свой каталог, и вы увидите, что в вашем каталоге есть файл composer.json, который имеет пакет monolog в качестве зависимости.
Теперь вы можете добавить следующий код PHP в файл monolog.php, чтобы проверить функциональность monolog.
Чтобы обновить только определенный пакет в вашем проекте PHP, вы можете использовать команду:
composer update vendor/package
Поздравляем! Вы успешно установили Composer на Ubuntu 22.04 и добавили зависимость пакета в файл composer.json.
Если вам понравился этот пост о том, как установить и использовать Composer на Ubuntu 22.04, поделитесь им с друзьями в социальных сетях. Спасибо.
Установка Composer Ubuntu 20.04
Composer — это свободный пакетный менеджер для установки зависимостей и самих пакетов PHP. Он разработан Нильсом Адерманом и Хорди Боггиано. С помощью скрипта можно в несколько нажатий установить нужный пакет, а также все его зависимости, например, ZendFramework или Symfony. Он широко используется разработчиками PHP скриптов.
В этой статье мы рассмотрим как установить Composer Ubuntu 20.04 и более поздних версиях, а также как пользоваться утилитой.
Установка Composer в Ubuntu
Вы не можете установить программу из официальных репозиториев. Нужно скачать скрипт из официального сайта и поместить его в папку с вашим проектом. Но сначала обновите систему и установите зависимости:
sudo apt install curl php-cli php-mbstring git unzip
Установка Composer ubuntu может быть выполнена двумя способами. Либо локально в папку проекта, либо же глобально, для всей системы. Сначала рассмотрим как установить программу локально. Перейдите в папку проекта:
Выполните такую команду для загрузки установочного скрипта:
curl -sS https://getcomposer.org/installer -o composer-setup.php
Затем запустите этот скрипт, чтобы создать файл composet.phar, который и будет использоваться для установки пакетов:
Теперь вы можете проверить работает ли Composer:
Теперь рассмотрим как установить программу глобально для всей системы. Вы можете скачивать файл установщика в любую папку, например, домашнюю:
curl -sS https://getcomposer.org/installer -o composer-setup.php
Только команда установки будет отличаться, в ней мы указываем папку, куда нужно установить скрипт:
sudo php composer-setup.php —install-dir=/usr/local/bin —filename=composer
Для проверки работы, вы можете выполнить команду:
Использование Composer
Для того чтобы указать какие пакеты нужно устанавливать используется конфигурационный файл composer.json. Сначала нужно его инициализировать в папке проекта. Для этого выполните:
Затем ответьте на вопросы программы. Можно оставить ответы по умолчанию. В файле сообщаются зависимости вашего проекта, а также их версии. Создайте этот файл в корневой папке вашего проекта. Синтаксис записей очень прост, и если вы раньше имели дело с JSON, то без проблем разберетесь:
«require»:
«производитель/пакет»: «версия»
>
«require-dev»:
«производитель/пакет»: «версия»
>
>
Секция require отвечает за пакеты, необходимые для работы программы, а require-dev — только за пакеты для разработки. Например, для проекта необходимо установить библиотеку работы с RSS Atom — picofeed. Для этого сначала откройте сайт https://packagist.org и найдите этот пакет:
На его странице вы можете видеть команду composer, которой его можно установить, в ней полное имя, а чуть ниже последнюю версию.
Для установки пакета выполните команду со страницы:
composer require p3k/picofeed
После установки пакет появится в секции require. Если во время установки вы получаете ошибку, например, такую:
Это означает, что пакету не хватает каких-либо зависимостей или возникли конфликты с уже установленными пакетами. В данном случае не хватает расширения PHP Dom. Вы можете установить его командой:
Для того чтобы установить все пакеты, описанные в файле конфигурации, используйте команду:
После установки пакетов composer создает файл autoload.php в папке vendor вашего проекта, с помощью него можно включить в проект все библиотеки, которые были установлены. Для этого достаточно подключить этот файл к проекту с помощью инструкции include или require:
Например, возьмем небольшой пример чтения ленты rss с GitHub:
download('https://losst.pro/feed/'); // Return the right parser instance according to the feed format $parser = $reader->getParser( $resource->getUrl(), $resource->getContent(), $resource->getEncoding() ); // Return a Feed object $feed = $parser->execute(); // Print the feed properties with the magic method __toString() echo $feed; >catch (PicoFeedException $e) < // Do Something. >?>
Установленные пакеты можно удалить. Например:
Если версии пакетов устарели, то вы можете их обновить с помощью одной команды:
Выводы
В этой небольшой статье мы рассмотрели как выполняется установка Composer Ubuntu 20.04 и 18.04, а также как использовать эту утилиту в своем проекте для разрешения зависимостей. Это очень удобно, когда вы можете один раз указать нужные пакеты и больше не заботиться об их установке и обновлении на других машинах.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.