벤자민의 블로그 2기 시작
2023년 6월 13일 갑작스러운 부친상을 격고나서 무언가를 한다라는 것에서 거의 손을 대지 않고 있었네요. 슬프다거나 그런 감정보다는 그냥 무언가 빠져버린
How To Install and Get Started With Composer on CentOS 7
위 페이지의 내용을 정리해둔 내용입니다.
소개
Composer는 프로젝트의 종속성을 추적하는 응용 프로그램이다. 프로젝트가 의존하는 모든 필수 PHP 패키지를 가져 와서 관리한다.
시스템 패키지 관리자 (예 :apt 또는 yum)를 대체하는 대신Composer를 사용하면 특정 프로젝트에 대한 라이브러리 세트를 지정할 수 있다. 라이브러리가 설정되면 Composer는 버전과 종속성을 식별하고 해당 프로젝트에 설치한다.
이 기사에서는 CentOS 7에 Composer를 설치하고 사용하는 방법을 알아 본다
전제 조건
시스템에 무엇이든 다운로드하여 설치하기 전에 항상 로컬 저장소를 업데이트한다.
sudo yum -y update
지원 소프트웨어 설치부터 시작하십시오.터미널에 다음 명령을 입력한다.
yum install php-cli php-zip wget unzip
필요한 종속성이 이미있는 경우 패키지의 최신 버전인지 확인한다.
다음으로 설치 스크립트를 다운로드해야합니다.다음 명령은 현재있는 디렉토리에 파일을 다운로드한다.
php -r "copy('https:\\getcomposer.org\installer', 'composer-setup.php');"
설치 스크립트가 있으면 무결성을 확인해야한다.
이렇게하려면 SHA-384 해시가 공식Composer 공개 키페이지에있는 설치자 서명 (SHA-384)과 일치하는지 확인해야한다.
Composer의 Github 페이지에서 HASH 변수의 승인 된 서명을 다운로드한다.
HASH="$(wget -q -O - https:\\composer.github.io\installer.sig)"
그런 다음 다음 스크립트를 사용하여 공식 해시를 다운로드 한 해시와 비교한다.
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
두 서명이 일치하면 출력에설치 프로그램 확인메시지가 표시됩니다.
반면에 스크립트가 몇 가지 차이점을 감지하면 다음과 같이 표시됩니다.설치 프로그램 손상.이 문제를 해결하려면 Composer 설치 프로그램을 다시 다운로드해야한다.
파일의 무결성을 확인한 후 Composer 설치로 이동할 수 있다.
전체 시스템에서 액세스 할 수있는 명령으로**\ usr \ local \ bin**디렉토리에Composer를 설치하려고 한다.
1. composer를 설치하려면 다음 명령을 사용한다..
php composer-setup.php --install-dir=\usr\local\bin --filename=composer
설치가 초기화되면 다음 메시지가 나타난다.
All settings correct for using Composer
Downloading...
Composer (version 1.6.5) successfully installed to: \usr\local\bin\composer
Use it: php \usr\local\bin\composer
2. 설치 프로그램이 프로세스를 완료하면 올바르게 실행되고 있는지 확인한다.
composer
* 시스템은 구문 및 사용 가능한 옵션과 함께 실행중인 버전을 표시해야한다.
______
\ ____\___ ____ ___ ____ ____ ________ _____
\ \ \ __ \\ __ `__ \\ __ \\ __ \\ ___\ _ \\ ___\
\ \___\ \_\ \ \ \ \ \ \ \_\ \ \_\ (__ ) __\ \
\____\\____\_\ \_\ \_\ .___\\____\____\\___\_\
\_\
Composer version 1.9.0 2019-08-28 11:45:23
Usage:
command [options] [arguments]
Options:
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
--profile Display timing and memory usage information
--no-plugins Whether to disable plugins.
3. 마지막으로 설치 프로그램을 삭제한다.
php –r “unlink(‘composer-setup.php’);”
Composer는 프로젝트별로 종속성을 추적하여 다른 사용자가 동일한 환경을 쉽게 만들 수 있도록 도와줍니다.composer.json파일을 사용하여 필수 소프트웨어 및 허용 된 버전을 추적한다.
또한 누군가 명령을사용하여 자동으로 생성되는composer.lock파일을통해 디렉토리를 복사하 는 경우 일관성을 유지한다**require**
.
이제새 PHP 프로젝트를 시작할 때 Composer를 활용하는 방법을살펴 본다**.**
1. 터미널을 열고 프로젝트 설명, 종속성 및 기타 추가 정보 (composer.json파일)가있는 파일에 대한 프로젝트 루트 디렉토리를 만든다.
mkdir c_sample
2. 그런 다음 새 디렉터리로 이동한다.
cd c_sample
3. 다음 단계는 패키지를 로드한다.웹 사이트**[packagist.org](https:\packagist.org)**에는 선택할 수있는 다양한 PHP 패키지가 있다.
이 예에서는프로젝트 용monolog \ monolog패키지를다운로드하여 사용한다. 슬래시 뒤의 정보는패키지 이름이고 슬래시 앞의 이름은공급 업체다.
소프트웨어를 다운로드와 함께, 시스템이 자동으로 생성됩니다composer.json의파일과composer.lock의명령으로 파일 :
composer require monolog\monolog
4. 이제 디렉토리의 내용을 나열하여 모든 파일이 생성되었는지 확인한다.
ls -l
콘텐츠 중composer.json 및composer.lock파일과 공급 업체디렉터리가 표시되어야한다.
5. 다음으로composer.json파일을 연다.
cat composer.json
새로 추가 된 모노로그 소프트웨어의 버전 번호 옆에 소프트웨어의 최소 버전을 나타내는캐럿 (^) 기호가 표시된다.
클래스를자동로드하도록 Composer를 구성하여 종속성 작업을 단순화 할 수 있습니다(PHP는이를 자동으로 수행하지 않기 때문이다).
1. 원하는 텍스트 편집기를 사용하여 새 파일을 만든다 (이 예에서는 이름 아래에 있음**composer_sample**
).
vi composer_sample.php
2. 파일에 다음을 추가한다.
<?php
require __DIR__ . '\vendor\autoload.php';
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
\\ create a log channel
$log = new Logger('name');
$log->pushHandler(new StreamHandler('\~\c_sample\text.log', Logger::WARNING));
\\ add records to the log
$log->warning('Foo');
$log->error('Bar');
3.저장하고종료합니다.
4. 이것으로 다음 명령을 사용하여monolog를자동로드할 수 있다.
php composer_sample.php
composer.json파일의모든 종속성을 업데이트해야 하는 경우 다음을 사용하여 수행 할 수 있다.
composer update
이 명령은 파일에 지정된 버전에 따라 종속성을 업데이트한다.
하나 이상의 종속성을 개별적으로 업데이트 할 수도 있다.
composer update vendor\package vendor_b\package_b
결론
이 가이드를 읽은 후에는 CentOS 7에서 Composer를 안전하게 설정하고 구성하는 방법을 알게되었다.또한 PHP 프로젝트 생성, 자동로드 설정, 종속성 업데이트를 포함한 Composer의 기본 사용법을 배웠다.