실행할 composer update
때이 오류 메시지가 나타납니다.
Loading composer repositories with package information
Updating dependencies (including require-dev)
Failed to download psr/log from dist: The zip extension and unzip command are both missing, skipping.
The php.ini used by your command-line PHP is: /etc/php/7.0/cli/php.ini
Now trying to download from source
작성기가 종속성을 다운로드 할 수 있도록 zip 및 unzip 명령을 사용하려면 어떻게해야합니까?
답변
Linux 및 PHP 버전에 따라 다를 수 있습니다.
(sudo) yum install zip unzip php-zip
(sudo) apt install zip unzip php-zip
이것은 매우 일반적으로 묻는 질문이며을 검색하여 에테르에서 더 유용한 정보를 찾을 수 있습니다 <distro> php <version> zip extension
.
답변
PHP 5.6이 설치된 서버의 경우
sudo apt-get install zip unzip php5.6-zip
답변
Debian Jessie (Docker Hub의 PHP 이미지에 대한 현재 기본값) :
apt-get install --yes zip unzip php-pclzip
–yes를 생략 할 수 있지만 Dockerfile에서 실행할 때 유용합니다.
답변
이전 우분투 배포판의 경우, 즉 16.04, 14.04, 12.04 등
sudo apt-get install zip unzip php7.0-zip
답변
Ubuntu 16.04 서버에서 PHP7.2를 사용하여 문제를 해결했습니다.
sudo apt-get install zip unzip php-zip
최신 정보
우분투 18.04에서 이것을 시도하고 또한 효과가있었습니다.
답변
우분투를 사용하고 있으며 다음 명령을 사용했습니다.
apt-get install --yes zip unzip
답변
요점을 설명하지는 않지만에서 작업중인 경우 유틸리티 Dockerfile
를 설치하여 Composer의 특정 문제를 해결할 수 있습니다 unzip
. 아래는 공식 PHP 이미지 를 사용하여 설치 unzip
하고 zip
PHP 확장을 사용하여 좋은 예입니다.
FROM php:7.4-apache
# Install Composer
COPY --from=composer /usr/bin/composer /usr/bin/composer
# Install unzip utility and libs needed by zip PHP extension
RUN apt-get update && apt-get install -y \
zlib1g-dev \
libzip-dev \
unzip
RUN docker-php-ext-install zip
이것은 위의 내용이 사랑스럽게 들리는 유용한 GitHub 문제 입니다.