Ich habe gerade eine Vagrant-Box mit Ubuntu/Trusty32 erstellt. Der Vagabund provisioner, während Erstellungszeit-Box hat die folgende getan:Kann nicht pip-Pakete aufgrund von locale.error in Ubuntu Vagrant Box installieren
- heruntergeladen Python virtualenv Quellkodearchivs
wget
- untarred die virtualenv Quellkodearchivs mit
tar zxvf ./virtualenv.tar.gz
- ein virtualenv erstellt
venv
python ./virtualenv/virtualenv.py ./venv
namens mit - Quelle das neu erstellte venv mit
source ./venv/bin/activate
- installiert ein paar Pip-Pakete mit
pip install django
,pip install mysqlclient
usw. in der virtuellen Umgebung.
Das alles hat gut funktioniert und perfekt - von dem Vagabund provisioner ausgeführt, wenn die vagabundierenden Box zum ersten Mal erstellt wurde.
Später jedoch meldete ich mich im vagrant ssh an und versuchte, ipython
über pip
zu installieren.
$ vagrant ssh
[email protected]:~$ source venv/bin/activate
(venv) [email protected]:~$ pip install ipython
Traceback (most recent call last):
File "/home/vagrant/venv/bin/pip", line 11, in <module>
sys.exit(main())
File "/home/vagrant/venv/local/lib/python2.7/site-packages/pip/__init__.py", line 215, in main
locale.setlocale(locale.LC_ALL, '')
File "/home/vagrant/venv/lib/python2.7/locale.py", line 579, in setlocale
return _setlocale(category, locale)
locale.Error: unsupported locale setting
(venv) [email protected]:~$
Hinweis: Dies ist eine neue, frische vagrant Box läuft ubuntu/trusty32 aus dem Kasten heraus.
Es gibt einige SO-Fragen über Gebietsschema Fehler, aber folgende ihnen ergab keine Hilfe für dieses vagabundierende Szenario.
Es macht keinen Sinn, dass alle es völlig in Ordnung, während vagrant Box Erstellung/Bereitstellungszeit gearbeitet, aber danach nicht mehr funktioniert, wenn die gleiche Sache manuell versuchen.
toll ... das hat funktioniert ... .was ist gerade passiert ??? Gibt es einen Unterschied zwischen dem Einschließen von 'en_US.UTF-8' in Anführungszeichen und dem Einschließen von' en_US.UTF-8' in Anführungszeichen? –
Hinweis .. Ich muss dies jedes Mal tun, wenn ich mich in der Shell der Maschine anmelde. Wie mache ich es dauerhaft? –
Sie können die Befehle in '.bashrc' hinzufügen und so wird es bei jeder Anmeldung in Ihrer Shell ausgeführt. Und vergessen Sie nicht, dies als Antwort zu markieren, damit jemand anderes, der das Problem hat, es als Antwort betrachten kann :) –