Właśnie utworzyłem pudełko Vagrant z ubuntu/trusty32. Włóczęga Provisioner, w czasie tworzenia skrzynki, zrobił, co następuje:Nie można zainstalować pakietów pip ze względu na locale.error wewnątrz Ubuntu Vagrant Box
- pobrane archiwum tar pyton źródło virtualenv użyciu
wget
- rozpakowany archiwum źródłowe virtualenv korzystając
tar zxvf ./virtualenv.tar.gz
- stworzył virtualenv nazywa
venv
użyciupython ./virtualenv/virtualenv.py ./venv
- pozyskał nowo utworzony venv z
source ./venv/bin/activate
- zainstalował kilka pakietów pip z
pip install django
,pip install mysqlclient
itp. W środowisku wirtualnym.
Wszystko to działało dobrze i doskonały - wykonywane przez Vagrant Provisioner gdy pole włóczęga był tworzony po raz pierwszy.
Jednak później zalogowałem się do ssh i próbowałem zainstalować ipython
przez pip
.
$ 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]:~$
Uwaga: to jest świeży nowy włóczęga pole Ubuntu/trusty32 po wyjęciu z pudełka.
Istnieje kilka pytań o SO związanych z błędem lokalizacji, ale śledzenie ich nie wykazało żadnej pomocy w tym scenariuszu.
To nie ma sensu, że to wszystko działało perfekcyjnie podczas tworzenia skrzynki Vagrant/czas przepis, ale potem nie działa, gdy próbuje to samo ręcznie.
Świetnie ... to działało ... co się stało ??? Czy jest jakaś różnica między zawijaniem 'en_US.UTF-8' wewnątrz cudzysłowów i niepakowaniem' en_US.UTF-8' wewnątrz cudzysłowu? –
Uwaga .. Muszę to zrobić za każdym razem, gdy loguję się do powłoki komputera. Jak zrobić to na stałe? –
Możesz dodać polecenia w '.bashrc' iw ten sposób zostanie wykonany za każdym razem, gdy zalogujesz się do swojej powłoki. A także nie zapomnij oznaczyć tego jako odpowiedzi, tak aby każdy, kto miał problem, mógł to uznać za odpowiedź :) –