May 29, 2023

Composer 설치

Composer 설치

Composer : Dependency Manager for PHP

How To Install and Get Started With Composer on CentOS 7

위 페이지의 내용을 정리해둔 내용입니다.

CentOs7 에 Composer를 설치

소개

Composer는 프로젝트의 종속성을 추적하는 응용 프로그램이다. 프로젝트가 의존하는 모든 필수 PHP 패키지를 가져 와서 관리한다.

시스템 패키지 관리자 (예 :apt 또는 yum)를 대체하는 대신Composer를 사용하면 특정 프로젝트에 대한 라이브러리 세트를 지정할 수 있다. 라이브러리가 설정되면 Composer는 버전과 종속성을 식별하고 해당 프로젝트에 설치한다.

이 기사에서는 CentOS 7에 Composer를 설치하고 사용하는 방법을 알아 본다

전제 조건

  • CentOS Linux 시스템
  • PHP 5.3.2 이상 설치
  • sudo 권한이있는 사용자 계정
  • 명령 줄 \ 터미널 창에 액세스 (Ctrl+Alt+F2)

CentOS 7에 PHP Composer를 설치하는 단계

1 단계 : 로컬 리포지토리 업데이트

시스템에 무엇이든 다운로드하여 설치하기 전에 항상 로컬 저장소를 업데이트한다.

    sudo yum -y update

2 단계 : 소프트웨어 종속성 설치

지원 소프트웨어 설치부터 시작하십시오.터미널에 다음 명령을 입력한다.

    yum install php-cli php-zip wget unzip

필요한 종속성이 이미있는 경우 패키지의 최신 버전인지 확인한다.

install-supporting-software-for-composer-for-centos7

3 단계 : Composer 설치 프로그램 스크립트 다운로드

다음으로 설치 스크립트를 다운로드해야합니다.다음 명령은 현재있는 디렉토리에 파일을 다운로드한다.

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

donwload-composer-installer

4 단계 : 다운로드 무결성 확인

설치 스크립트가 있으면 무결성을 확인해야한다.

이렇게하려면 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 설치 프로그램을 다시 다운로드해야한다.

5 단계 : 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는 프로젝트별로 종속성을 추적하여 다른 사용자가 동일한 환경을 쉽게 만들 수 있도록 도와줍니다.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');

configure-composer-to-autoload

3.저장하고종료합니다.

4. 이것으로 다음 명령을 사용하여monolog자동로드할 수 있다.

    php composer_sample.php

종속성 업데이트

composer.json파일의모든 종속성을 업데이트해야 하는 경우 다음을 사용하여 수행 할 수 있다.

    composer update

이 명령은 파일에 지정된 버전에 따라 종속성을 업데이트한다.

하나 이상의 종속성을 개별적으로 업데이트 할 수도 있다.

    composer update vendor\package vendor_b\package_b

결론

이 가이드를 읽은 후에는 CentOS 7에서 Composer를 안전하게 설정하고 구성하는 방법을 알게되었다.또한 PHP 프로젝트 생성, 자동로드 설정, 종속성 업데이트를 포함한 Composer의 기본 사용법을 배웠다.