Як встановити Composer на Ubuntu: Посібник з безболісної інсталяції

Під час створення програмного забезпечення, незалежно від того, чи це простий чи складний проект, майже зрозуміло, що програмне забезпечення для належного функціонування залежатиме від деяких зовнішніх бібліотек, модулів або компонентів. Ці зовнішні ресурси, необхідні для належної роботи програмного забезпечення, відомі як залежності.

Ефективне управління залежностями в будь-якому проекті є критично важливим процесом. На щастя, існують різні інструменти, розроблені для автоматизації керування залежностями та полегшення роботи розробників. Як розробник, ваш інструмент для керування залежностями залежатиме від мови та екосистеми, у якій ви працюєте.

Якщо ви створюєте свої проекти за допомогою PHP, вам слід шукати не далі, ніж Composer як інструмент для керування залежностями у ваших проектах.

Що таке Композитор?

Композитор це популярний інструмент, розроблений і створений для керування залежностями в PHP. Composer, який значною мірою натхненний npm вузла та бандлером ruby, дозволяє вам оголошувати зовнішні бібліотеки, від яких залежить ваш проект PHP, і він керуватиме ними за вас.

Це означає, що Composer встановить усі залежності, необхідні для вашого проекту, а також оновлюватиме їх.

Також важливо зазначити, що Composer не є менеджером пакетів, як Apt або Yum. Незважаючи на те, що йдеться про бібліотеки, ці бібліотеки за замовчуванням не інстальовано глобально на машині. Замість цього Composer керує залежностями окремо для кожного проекту, і тому він встановлює залежності лише локально в каталозі всередині проекту PHP, який ви створюєте.

Composer також дозволяє вам дізнатися, які версії яких пакетів можна та потрібно встановити у вашому проекті, і встановлює їх за вас. Він також надає одну команду, яку можна використовувати для оновлення всіх залежностей у вашому проекті.

Composer є важливим інструментом для створення проектів за допомогою PHP. Composer забезпечує ефективне керування залежностями, а також надає репозиторій під назвою Пакувач який надає широкий вибір пакетів і бібліотек PHP, які ви можете додати до своїх проектів PHP як залежності.

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

Давайте тепер розглянемо, як можна встановити Composer в Ubuntu. Але спочатку давайте розглянемо попередні умови, які потрібно виконати, перш ніж ви зможете інсталювати Ubuntu.

Передумови для встановлення Composer в Ubuntu

Щоб інсталювати Composer в Ubuntu:

1. Переконайтеся, що ви можете отримати доступ до терміналу на вашому комп’ютері та виконувати команди як користувач root.

2. Встановіть PHP версії 7.2.5 і вище на вашому комп’ютері. Ви можете перевірити, чи встановлено PHP на вашій машині та його версію, відкривши термінал і виконавши

php -version

Якщо у вас встановлено PHP, ви повинні отримати такий результат:

Якщо PHP не інстальовано, виконайте таку команду, щоб інсталювати його:

sudo apt install php

3. Мати систему контролю версій. Git є відмінним вибором для цього. Переконайтеся, що Git встановлено, виконавши:

git --version

Якщо встановлено Git, ви отримаєте такий номер версії:

  Як створити власну карту відстеження покемонів у реальному часі

Якщо Git не встановлено, виконайте таку команду, щоб установити його

sudo apt install git

4. Встановіть на вашій машині менеджер архівів, який використовуватиметься для розпакування файлів. Для цього достатньо буде дьогтю. Перевірте, чи встановлено tar на вашій машині, виконавши:

tar --version

Якщо у вас немає tar, ви можете встановити його, виконавши:

sudo apt-get install tar

Після того, як ви задовольнили наведені вище передумови, ви готові інсталювати Composer.

Як встановити Composer на Ubuntu

Встановлюючи Composer, ви можете встановити його глобально на вашій машині або локально в контексті встановлення PHP. Глобальне встановлення дозволяє отримати доступ до Composer і викликати його з будь-якого каталогу на вашому комп’ютері, на відміну від локального встановлення.

Глобальне встановлення Composer є рекомендованим способом встановлення Composer, і саме це ми й зробимо.

Встановлення Composer на Ubuntu через термінал передбачає виконання сценаріїв, знайдених на Composer завантажити сторінки.

Виконайте наступні кроки, щоб глобально встановити Composer на Ubuntu:

1. Відкрийте термінал і виконайте наступну команду, щоб завантажити програму встановлення Composer у поточний каталог.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

2. Виконайте наступну команду, щоб перевірити інсталятор SHA-384.

php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

SHA-384 інсталятора — це криптографічне хеш-значення, яке використовується для перевірки цілісності інсталятора Composer. Іншими словами, це захід безпеки, щоб гарантувати, що інсталятор, який ви завантажили, не було змінено чи пошкоджено.

Виконання наведеної вище команди має створити вихідні дані про те, що інсталятор перевірено, як показано нижче. Продовжуйте, коли ви отримаєте такий результат, що підтверджує цілісність вашого інсталятора.

3. Виконайте наступну команду, щоб запустити інсталятор

php composer-setup.php

Ви маєте отримати такий вихід, який підтверджує, що Composer успішно встановлено.

Зауважте, що composer.phar, який є виконуваним файлом для Composer, було додано до каталогу, у якому ви його інсталювали.

4. Оскільки Composer успішно встановлено, виконайте наступну команду, щоб видалити програму встановлення, яку ви завантажили раніше, оскільки вона вам більше не потрібна.

php -r "unlink('composer-setup.php');"

5. Щоб переконатися, що Composer встановлено глобально, і ви можете викликати його з будь-якого каталогу, вам потрібно помістити файл composer.phar у каталог у вашому PATH. Для цього виконайте наступну команду та введіть пароль, коли буде запропоновано

sudo mv composer.phar /usr/local/bin/composer

6. Переконайтеся, що Composer успішно встановлено, виконавши таку команду:

composer

Якщо Composer було успішно встановлено, ви повинні отримати такий результат.

Як використовувати Composer

Після встановлення Composer наступним кроком буде використання його для керування залежностями. Як згадувалося раніше, Composer має репозиторій під назвою Пакувач який містить пакунки, які можна встановити як залежності за допомогою Composer.

Щоб побачити, як користуватися Composer, ми збираємося встановити пакет під назвою http-повідомлення який є інтерфейсом, який описує повідомлення HTTP.

Щоб використовувати Composer для встановлення http-повідомлення:

  Як встановити Open Broadcaster (OBS) в Ubuntu

1. Створіть нову папку під назвою composerDemo та перейдіть у неї, виконавши наступні команди в терміналі відповідно

mkdir composerDemo
cd composerDemo

2. Створіть файл .gitignore у каталозі, виконавши:

touch .gitignore

Цей файл дозволяє вказати, які файли не слід відстежувати Git.

3. Згенеруйте файл composer.json для свого проекту, виконавши:

composer init

Composer.json — це центральний файл конфігурації, який використовується Composer. У ньому ви вказуєте метадані, які описують ваш проект, а також визначаєте залежності, на які покладається ваш проект, щоб композитор міг автоматично керувати ними за вас.

Наведена вище команда призводить до результату нижче:

Посібник допоможе вам створити файл composer.json. У першому запиті натисніть Enter, щоб прийняти запропоновану назву проекту.

4. У наступному запиті введіть короткий опис проекту та натисніть Enter. Ви можете вставити короткий опис, поданий нижче, і натиснути Enter.

A demonstration of how to use PHP Composer

5. Наступна підказка запитує автора; натисніть Enter, щоб використовувати значення за замовчуванням.

6. Далі вас попросять вказати мінімальну стабільність. Для цього ви можете залишити його порожнім, натиснувши Enter, щоб перейти до наступного запиту.

7. Наступна підказка вимагає від вас вказати тип пакета. Для цього введіть проект і натисніть Enter, як показано нижче:

8. У підказці із запитом на ліцензію натисніть Enter, щоб залишити поле порожнім і перейти до наступного

9. Потім вас запитають, чи бажаєте ви вказати свої залежності; для цього натисніть Enter, щоб вибрати Так. Потім вам буде запропоновано знайти пакет.

10. У запиті пошуку пакета введіть http-повідомлення та натисніть enter. Це здійснить пошук зазначеного пакета та поверне результати пошуку, як показано нижче:

Пакет, який нас цікавить, — це перший пакет під назвою psr/http-message. Щоб вибрати його, введіть пов’язаний із ним номер і натисніть Enter. Тому введіть 0 (нуль) і натисніть Enter.

11. Наступним запитом є введення необхідного обмеження версії (або залиште поле пустим, щоб використовувати останню версію). Для цього нам потрібно вказати версію, яку ми хочемо використовувати, або залишити це поле порожнім, щоб використовувати останню версію.

Щоб перевірити останню версію пакета, перейдіть на його сторінку на Packagist. Остання версія – це версія 2.0, як показано нижче:

Composer автоматично оновлює пакети, щойно доступні оновлення. Однак ви не хочете, щоб він оновлювався до версії, яка не є зворотно сумісною з версією, яку ви зараз використовуєте у своєму проекті, оскільки це порушить ваш код PHP. Щоб уникнути цього, введіть наступне, щоб указати версію пакета, і натисніть Enter:

^2.0

Це вказує Composer встановити версію 2.0 або новішу, якщо ця версія зворотно сумісна.

12. Потім вам буде запропоновано знайти інший пакет; просто натисніть Enter, щоб перейти до наступного запиту й не шукати інший пакет.

13. Коли вас попросять визначити ваші залежності від розробника, натисніть Enter. У підказці пошуку пакета натисніть Enter, щоб пропустити його, оскільки наші залежності від розробників будуть такими самими, як і наші залежності в реальному часі.

14. Наступна підказка попросить вас додати відображення автозавантаження PSR-4. Щоб пропустити, натисніть Enter.

  Як виправити помилку Accelerated Renderer

15. Це дасть вам попередній перегляд файлу composer.json, який ви щойно згенерували, як показано нижче:

Натисніть Enter, щоб підтвердити генерацію.

16. Наступна підказка запитає, чи бажаєте ви встановити вказані вами залежності. Для цього натисніть Enter, щоб установити їх, як показано нижче:

17. У терміналі введіть таку команду, щоб відкрити щойно створений проект у редакторі коду

code .

Результат показано нижче:

Зверніть увагу, що було згенеровано файл composer.json, а наші залежності вказані під ключом require. Встановлені залежності встановлюються в каталог під назвою vendor.

18. Щоб уникнути відстеження каталогу постачальника, який має всі залежності, відкрийте файл .gitignore і вставте наступний рядок.

/vendor/

Рекомендується не відстежувати цей файл, оскільки він може стати дуже великим, а залежності можна легко встановити автоматично з файлу composer.json.

19. Після створення файлу composure.json ви можете легко додати нові залежності, відредагувавши необхідний розділ у файлі composure.json. Наприклад, щоб додати пакет під назвою log, додайте його до потрібного розділу, як показано нижче:

"require": {
        "psr/http-message": "^2.0",
        "psr/log": "^3.0.0"
    },

20. Щоб встановити цю нову залежність у вашому проекті, поверніться до терміналу та виконайте:

composer update

Результат показано нижче:

Це встановить пакет, який ви щойно додали до свого файлу composure.json.

Тепер ви готові розпочати роботу над своїми проектами PHP і використовувати Composer для керування залежностями у вашому проекті.

Як оптимізувати Composer для кращого керування пакетами

Щоб дозволити Composer працювати ефективніше, переконайтеся, що ви точно вказали обмеження версії для залежностей. Прикладом цього було те, що ми зробили «^2.0».

Уникайте дуже широких обмежень версії, таких як «*», що означає, що Composer може встановити будь-яку версію. Це може призвести до проблем сумісності та стабільності у вашому проекті, оскільки ви не можете передбачити, яку версію встановить Composer.

Крім того, уникайте додавання надмірних спеціальних сценаріїв до файлу composer.json. Додайте лише необхідні сценарії. Надмірна кількість сценаріїв часто призводить до величезних витрат під час керування залежностями.

Щоб оптимізувати швидкість роботи Composer, увімкніть розширення PHP curl. Ви також можете використовувати плагіни Composer, такі як hirak/prestissimo, які розпаралелюють операції Composer, що, у свою чергу, прискорює встановлення пакунків.

Ви також можете очистити кеш Composer, щоб видалити старі та невикористані пакунки, щоб оптимізувати його продуктивність. Крім того, пам’ятайте, що не слід відстежувати та фіксувати каталог постачальника, де Composer інсталює пакунки. Це допоможе прискорити клонування та оновлення сховищ ваших проектів.

Як видалити Composer

Якщо ви більше не хочете використовувати Composer в Ubuntu, ви можете видалити його, виконавши таку команду:

sudo rm -rf /usr/local/bin/composer

Ви можете підтвердити, що Composer успішно видалено, виконавши таку команду:

composer

Якщо повністю видалити, ви повинні отримати такий результат:

Висновок

Управління залежностями — важливий процес під час створення проектів. Ефективне керування залежностями гарантує, що ви уникнете проблем із сумісністю у ваших проектах і матимете проекти, які можна підтримувати.

Крім того, це дозволяє розробляти модульне програмне забезпечення та покращувати співпрацю між командами розробників. Якщо ви створюєте проекти на PHP, подумайте про ефективне використання Composer і легкого керування залежностями у вашому проекті.

Далі ви також можете прочитати про те, що таке Ubuntu PPA і як його встановити.