7

Czy mogę zaktualizować lub usunąć narzędzia pip i setup dostarczone z AWS Elastic Beanstalk?Czy mogę zaktualizować stare wersje pip i narzędzi instalacyjnych Amazon?

Wersje PIP i setuptools zaopatrzone w moim środowisku AWS Elastic Beanstalk Python (w środowisku wirtualnym 2,7 uruchomiony mojej aplikacji ami-d14608e1; w /opt/python/run/venv/lib/python2.7/site-packages) są bardzo stare: jak donosi

pip list --outdated 

setuptools (Current: 2.2 Latest: 12.0.5) 
pip (Current: 1.5.4 Latest: 6.0.7) 

mogę zaktualizować nich (na przykład poprzez wymienienie ich w moim requirements.txt) lub są te konkretne wersje oczekiwane przez lub potrzebne dla EB Python i procesów wdrażania do pracy?

Odpowiedz

10

Przykładowo domyślnym środowiskiem AWS jest zwykle stara wersja. Obecnie jest to 6.1.1 na komputerze, którego używam, podczas gdy pip powtarza się przy każdym wywołaniu, że dostępna jest wersja 9.0.1.

Zależności czasami wymagają najnowszych wersji pip. Jednym ze sposobów jego udostępnienia jest poleganie na samej pip, ponieważ źródła yum dostarczane przez AWS wolniej się aktualizują (ze względu na ogromny wpływ, który spowodowałby ...).

Różne usługi AWS mają różne rozwiązania. Pytanie dotyczy Beanstalk. Zakładając, że wdrożenie w oparciu o eb dostarczonych przez AWS, możliwe jest wykonywanie poleceń w zbiorniku docelowym:

  • Utwórz plik .ebextensions/upgrade_pip.config.
  • Wprowadź komendę, aby wykonać.

Aby uaktualnić pip komenda tak spełnia swoje zadanie:

commands: 
    pip_upgrade: 
    command: /opt/python/run/venv/bin/pip install --upgrade pip 
    ignoreErrors: false 

Należy pamiętać, że nazwa pliku dla .ebextensions/upgrade_pip.config określa kolejność wykonywania. Jeśli musi działać wcześniej niż jakikolwiek inny skrypt w wersji .ebextensions, konieczny jest prefiks taki jak 01_upgrade....

Powiązane problemy