it-source

업데이트 중 Composer가 중단됨

criticalcode 2023. 1. 3. 21:45
반응형

업데이트 중 Composer가 중단됨

문제가 생겼어요, 저는 Larabel 4 프로젝트에 새로운 패키지를 설치하려고 했습니다. 내가 뛰면php composer.phar update★★★★★★★★★★★★★★★★★★.

Loading composer repositories with package information
Updating dependencies (including require-dev)
Killed

인터넷에서 문제를 찾아보니 메모리가 문제인 것 같습니다.메모리가 부족한 것 같습니다.확인해보니 약 411MB의 빈 용량이 있습니다.작곡가가 정말 RAM이 더 필요합니까?

「Killed」메시지는, 통상, 프로세스가 메모리를 너무 많이 소비하고 있는 것을 의미하기 때문에, 가능하면 시스템에 메모리를 증설하는 것만으로 끝납니다.때 768MB를 얻을 수 composer update일을 할 수 있는 기회도 있습니다.

라이브 을 하고 「 」 「 」 「 」 「 」 「 」 「 」 「 」 「 」 。composer update 은 다음과 같습니다.대신 해야 할 일은 다음과 같습니다.

  1. 실행합니다.composer update메모리 제한이 그다지 심하지 않은 로컬 환경(물리 노트북/데스크탑 또는 노트북/데스크탑에서 실행되는 도커 컨테이너/VM 등)에 적합합니다.
  2. 또는 업로드git push filedlock.lock.lock.lock.dlock.
  3. 실행합니다.composer install를 참조해 주세요.

composer install그러면 .lock 파일에서 읽혀져 모든 패키지의 최신 버전을 검색하는 것이 아니라 매번 동일한 버전을 가져옵니다.이로 인해 앱이 고장날 가능성이 낮아지고 작곡가가 메모리를 적게 사용하게 됩니다.

자세한 내용은 이쪽:https://getcomposer.org/doc/01-basic-usage.md#installing-with-composer-lock

전체 할 도 있습니다.vendor, 를 실행할 경우, 「」를 실행할 필요가 없습니다.composer install전혀 그렇지 않지만, 그러면 넌 도망가야composer dump-autoload --optimize.

저처럼 메모리가 부족한 마이크로 VM을 사용하고 있다면 스왑 파일을 생성하면 다음과 같은 이점이 있습니다.

#Check free memory before
free -m

mkdir -p /var/_swap_
cd /var/_swap_

#Here, 2G ~ 2GB of swap memory. Feel free to add MORE
sudo fallocate -l 2G swapfile

chmod 600 swapfile
mkswap swapfile
swapon swapfile
#Automatically mount this swap partition at startup
echo "/var/_swap_/swapfile none swap sw 0 0" >> /etc/fstab

#Check free memory after
free -m

여러 댓글에서 지적했듯이 루트 역할을 하지 않으면 sudo를 추가하는 것을 잊지 마세요.

.btw, "btw, "btw"는 "/btw"/"/"/"/"btw"입니다.
/var최적의 장소는 아닐지도 모르지만, 어느 장소가 될지 모릅니다.또, 소규모의 서버는 주로 테스트용으로 사용되고 있기 때문에, 거의 신경 쓰지 않습니다.

컴포넌트 이외의 컴포넌트에서는 대량의 RAM과 처리 능력이 필요합니다.다음은 제가 한 몇 가지 작업입니다. 이 과정을 견딜 수 있게 만들었습니다.이건 내 구름놀이 환경에 있었어.

  1. 단순히 RAM이 부족할 수 있습니다.스왑을 유효하게 합니다.https://www.digitalocean.com/community/search?q=add+swap (주의:개별 파티션을 추가하는 것이 가장 좋은 방법이라고 생각합니다.Digital Ocean's Guide는 환경에 적합)
  2. service mysql stop 마세요 (DB/mem-hog RAM입니다.을 사용하다
  3. top프로세스가 완료될 때까지 메모리/프로세서 소비량을 감시합니다.
  4. composer.phar update --prefer-dist -vvv( distro zip ( 、 [ ro (중 ( 。 번 .--dry-run
  5. Composer는 이전 버전의 PHP(예: 5.3x)에서 실행 속도가 느린 것으로 알려져 있습니다.5.5.9에서는 아직 느리지만...

추가 메모리가 필요 없는 Digital Ocean 수정 - 스왑 활성화.다음은 1GB의 예입니다.

아래 터미널에서

/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
/sbin/mkswap /var/swap.1
sudo /sbin/swapon /var/swap.1

위의 솔루션은 다음 reboot까지 동작하며, 그 후 스왑을 다시 활성화해야 합니다.reboot 사이에 이 파일을 유지하려면 스왑 파일을 fstab에 추가합니다.

sudo nano /etc/fstab

위 파일을 엽니다. 파일에 아래 줄을 추가합니다.

/var/swap.1 swap swap sw 0 0

서버를 재기동합니다.작곡가는 정상적으로 동작합니다.

실행했을 때 이 오류가 발생하였습니다.composer installPHP DOKER, PHP DOKER.512MB에서1.5MB

그러기 위해서는:

도커 -> 프리퍼런스 -> 자원

여기에 이미지 설명 입력

실행합니다.composer self-update ★★★★★★★★★★★★★★★★★」composer clearcache및 composer vendor composer.lock을 실행합니다.php -d memory_limit=-1 /usr/local/bin/composer install

작곡가의 메모리 제한을 늘립니다.

php -d memory_limit=4G /usr/local/bin/composer update

도커를 사용하는 경우 COMPOSER_PROCESS_TIMEOUT을 사용할 수 있습니다.

environment:
  COMPOSER_MEMORY_LIMIT: -1
  COMPOSER_PROCESS_TIMEOUT: 2000 #seconds

큰 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★」composer의 RAM을 .이것을 2GB의 RAM으로 할 수 .★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ps -aux동작하고 있습니다.도커 옵션에서 수동으로 추가해야 합니다.그 외에는 아무것도 도움이 되지 않습니다.

여기에 이미지 설명 입력

다음은 Laravel Framework에서 작곡가의 maatwebsite\excel 패키지를 설치하는 데 성공한 방법입니다.

  1. 원격 서버에서 composer.json 파일과 composer.lock 파일을 다운로드합니다.
  2. composer update로컬 명령 프롬프트에서 (모든 설치 프로세스가 완료될 때까지 기다립니다)
  3. composer.lock 파일을 원격 서버에 업로드합니다.
  4. 려려를 composer install(모든 프로세스가 완료될 때까지 기다립니다)
  5. 다 했어요.

Composer 2 업데이트로 메모리 사용량이 줄었습니다.

composer self-update
composer update
composer require xxx

AWS ec2 Ubuntu Server Php 메모리 값 업그레이드 for Magento 2.3 수정.x

  • Php 7.2 / 7.3
  • nginx
  • 우분투
  • 작곡가 1.X
  • 마리아DB
  • 마젠토 2.3x

오류: 종속성 업데이트 중(require-dev 포함)에 대해 중지되었습니다.

  1. RAM은 4GB 이상 필요
  2. 인스턴스 유형을 적절한 유형으로 변경 또는 RAM 업그레이드
  3. Php 메모리 값 변경
  4. 서버의 재기동
  5. 동일한 패키지를 다시 설치하세요.

PHP 값 업데이트는 서버와 PHP fpm X에 따라 '/etc/php/7.2/fpm/php.ini' 아래에 있을 수 있습니다.XX 버전

Seed 명령어 '서버의 요구에 따라 변경'을 사용하는 경우 >> /etc/php/7.2/fpm/php.ini

메모리 제한 유형을 "3.5"로 지정합니다.G" 또는 "3500MB" Php 7.2.x

sudo sed -i "s/memory_limit = .*/memory_limit = 3.5G/" /etc/php/7.2/fpm/php.ini
  

Php 7.3.x

  sudo sed -i "s/memory_limit = .*/memory_limit = 3.5G/" /etc/php/7.3/fpm/php.ini

'free -h' 명령에 적용되는지 테스트합니다.

    free -h

다시 설치 패키지 #

Composer를 통한 확장 설치

Magento 2 설치 디렉토리로 이동합니다.

cd /var/www/html/

'superuser' 권한으로

sudo su

설치 시작

composer require XXXXXX/XXXXXXX

모듈을 유효하게 하다

php bin/magento module:enable XXXXXX/XXXXXXX


php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy
Restart
sudo reboot

엔지오이

저는 ec2 인스턴스에서 다음과 같은 문제에 직면해 있었습니다.

  1. 로컬 환경에서 ec2로 composer.lock 파일을 복사했습니다.
  2. 다음 " " " 를 실행합니다.sudo composer install내 프로젝트의 모든 종속성을 설치하기만 하면 됩니다.

Ubuntu 서버에서 아래 단계를 유지하며 해결했습니다.잘 되길 바랍니다.

  • Apache 서버 중지

    sudo service apache2 stop

  • 작곡가 업데이트 실행

    sudo composer update

  • 아파치 서버 시작

    sudo service apache2 start

php -d memory_limit=5G composer.par 업데이트

와일드카드로 올바르게 업데이트되지 않는 패키지로 인해 이 문제가 발생하였습니다.마지막 버전을 직접 사용해도 동작합니다.

"l3/cas-filename" : "~1.0" -------> "l3/cas-filename" : "1.13"

Larabel/Homestead로 해결(Vagrant Windows)

  1. ★★Homestead.yaml.

  2. 떠돌아다니다

  3. 부랑자 SSH

  4. 선택한 폴더에 이 행과 함께 Symfony 설치(파일 없음)

    COMPOSER_MEMORY_LIMIT=-1 composer create-project symfony/website-skeleton . -s dev
    

사용 중:

  • 가상 박스
  • 4096 Gb RAM
  • 2 CPU
  • 10 GB HDD (500 MB 스왑)
  • 우분투 20.04

실행 중:

  • composer update 8 에 Larabel 8 폴더 안에

가상 시스템에 대한 스왑을 설정하지 않았기 때문에 Virtualbox에서 500Mb 스왑 공간을 생성했는데, 이 공간이 충분하지 않았습니다.

그래서 작곡가는 4Gb의 RAM과 스왑을 사용하고 있었습니다.

VM에 더 많은 스왑 공간을 할당하고 작동했습니다.

아래 그림과 같이 컴포저는 모든 RAM과 2GB의 스왑을 사용했습니다.

시스템 모니터

다음과 같이 설정할 수 있습니다."dist"컴포저 설정에 있습니다.

이 에러는 로컬 도커 환경에서 발생하고 있습니다.Docker를 재기동하는 것만으로 해결했습니다.

언급URL : https://stackoverflow.com/questions/20667761/composer-killed-while-updating

반응형