Rozwiązanie dla WSL (Ubuntu w systemie Windows)
Jeśli używasz WSL (Ubuntu w systemie Windows), możesz także otworzyć bash jako terminal w pycharm i aktywować linux virtualenv.
Użyj .pycharmrc
pliku opisanego w odpowiedzi Petera Gibsona; Dodaj .pycharmrc
plik do katalogu domowego z następującą zawartością:
source ~/.bashrc
source ~/path_to_virtualenv/bin/activate
W Pycharm File> Settings> Tools> Terminal dodaj następującą `` ścieżkę powłoki '':
"C:/Windows/system32/bash.exe" -c "bash --rcfile ~/.pycharmrc"
Specyficzny dla projektu virtualenv
Droga do twojego virtualenv .pycharmrc
nie musi być absolutna. Możesz ustawić virtualenv dla konkretnego projektu, ustawiając ścieżkę względną z katalogu projektu. Mój virtualenv zawsze znajduje się w folderze „venv” w katalogu mojego projektu, więc mój .pycharmrc
plik wygląda następująco:
źródło ~ / .bashrc
źródło ~ / pycharmvenv / bin / aktywuj path
source ./venv/bin/activate #relative path
BONUS: automatycznie otwórz tunel ssh, aby podłączyć virtualenv jako tłumacza projektu
Dodaj do swojego .pycharmrc
pliku:
if [ $(ps -aux | grep -c 'ssh') -lt 2 ]; then
sudo service ssh start
fi
Sprawdza, czy tunel ssh jest już otwarty, aw przeciwnym razie otwiera. W File -> Settings -> Project -> Project Interpreter in Pycharm, dodaj nowy zdalny interpreter o następującej konfiguracji:
+ -------------------------- + ---------------------- ----------- + ------- + ---- +
| Imię: | <Nazwa tłumacza> | | |
| Wybierz | „Poświadczenia SSH” | | |
| Gospodarz: | 127.0.0.1 | Port: | 22 |
| Użytkownik: | <Nazwa użytkownika Linux> | | |
| Typ autoryzacji: | „Hasło” | | |
| Hasło: | <Hasło Linuksa> | | |
| Ścieżka interpretera Pythona: | <Linuxowa ścieżka do twojego virtualenv> | | |
| Ścieżka pomocników Pythona: | <Ustaw automatycznie> | | |
+ -------------------------- + ---------------------- ----------- + ------- + ---- +
Teraz, kiedy otwierasz projekt, twój bash automatycznie uruchamia się w twoim virtualenv, otwiera tunel ssh, a pycharm łączy virtualenv jako zdalny interpreter.
ostrzeżenie: ostatnia aktualizacja w systemie Windows automatycznie uruchamia usługę SshBroker i SshProxy podczas uruchamiania. Blokują one tunel ssh z systemu Linux do systemu Windows. Możesz zatrzymać te usługi w Menedżerze zadań -> Usługi, po czym wszystko znów będzie działać.
~/pycharmenv/bin/terminalactivate
brzmi jak dobra opcja.