web-dev-qa-db-fra.com

Docker compose un script se plaignant d'une importation de module python

Le script Docker docker-compose --version Génère maintenant une erreur étrange et se plaint d'un module python ordered_dict Manquant. Je ne sais pas pourquoi cela se produit, mais auparavant il fonctionnait juste Je ne sais pas si c'est lié mais j'ai installé pip pour python et plus tard installé awscli en utilisant le pip.

Vous trouverez ci-dessous la trace de pile que j'obtiens en exécutant docker-compose --version

Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 9, in <module>
    load_entry_point('docker-compose==1.8.0', 'console_scripts', 'docker-compose')()
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 484, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 2725, in load_entry_point
    return ep.load()
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 2343, in load
    return self.resolve()
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 2349, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/usr/lib/python2.7/dist-packages/compose/cli/main.py", line 14, in <module>
    from . import errors
  File "/usr/lib/python2.7/dist-packages/compose/cli/errors.py", line 9, in <module>
    from docker.errors import APIError
  File "/usr/lib/python2.7/dist-packages/docker/__init__.py", line 20, in <module>
    from .client import Client, AutoVersionClient, from_env # flake8: noqa
  File "/usr/lib/python2.7/dist-packages/docker/client.py", line 18, in <module>
    import requests
  File "/usr/lib/python2.7/dist-packages/requests/__init__.py", line 58, in <module>
    from . import utils
  File "/usr/lib/python2.7/dist-packages/requests/utils.py", line 26, in <module>
    from .compat import parse_http_list as _parse_list_header
  File "/usr/lib/python2.7/dist-packages/requests/compat.py", line 42, in <module>
    from .packages.urllib3.packages.ordered_dict import OrderedDict
ImportError: No module named ordered_dict
11
htopiwala

La réinstallation de docker-compose a fait l'affaire pour moi. Vous pouvez réinstaller en supprimant le docker-compose fichier de /usr/local/bin et le réinstaller en utilisant les instructions fournies ici .

1
htopiwala

Vous devez réinstaller.

Voici les étapes qui ont fonctionné pour moi sur Ubuntu 18.04

Étapes de réinstallation:

Tout d'abord supprimez les binaires docker-compose installés:

/usr/bin$ Sudo rm -r docker-compose
/usr/local/bin$ Sudo rm -r docker-compose

Installation:

cd ~/

Sudo curl -L "https://github.com/docker/compose/releases/download/1.25.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Sudo chmod +x /usr/local/bin/docker-compose

Sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

docker-compose --version

Vous pouvez en savoir plus ici: https://docs.docker.com/compose/install/#install-compose

0
user3785966

faites-le en installant urllib3 version 1.22 et désinstallez la version précédente d'urllib3 en exécutant la commande suivante dans le shell

pip uninstall urllib3
pip install urllib3==1.22
0