Solución para WSL (Ubuntu en Windows)
Si está usando WSL (Ubuntu en Windows), también puede abrir bash como terminal en pycharm y activar un linux virtualenv.
Utilice un .pycharmrc
archivo como se describe en la respuesta de Peter Gibson; Agregue el .pycharmrc
archivo a su directorio de inicio con el siguiente contenido:
source ~/.bashrc
source ~/path_to_virtualenv/bin/activate
En Archivo Pycharm > Configuración> Herramientas> Terminal, agregue la siguiente ' Ruta de Shell':
"C:/Windows/system32/bash.exe" -c "bash --rcfile ~/.pycharmrc"
Virtualenv específico del proyecto
El camino hacia su virtualenv en .pycharmrc
no tiene que ser absoluto. Puede configurar un virtualenv específico del proyecto estableciendo una ruta relativa desde el directorio de su proyecto. Mi virtualenv siempre se encuentra en una carpeta 'venv' en el directorio de mi proyecto, por lo que mi.pycharmrc
archivo se ve así:
fuente ~ / .bashrc
fuente ~ / pycharmvenv / bin / activar # ruta absoluta
source ./venv/bin/activate # ruta relativa
BONUS: abre automáticamente el túnel ssh para conectar virtualenv como intérprete del proyecto
Agregue lo siguiente a su .pycharmrc
archivo:
if [ $(ps -aux | grep -c 'ssh') -lt 2 ]; then
sudo service ssh start
fi
Esto verifica si un túnel ssh ya está abierto y, de lo contrario, abre uno. En Archivo -> Configuración -> Proyecto -> Intérprete de proyecto en Pycharm, agregue un nuevo intérprete remoto con la siguiente configuración:
+ -------------------------- + ---------------------- ----------- + ------- + ---- +
| Nombre: | <Nombre del intérprete> | | |
| Seleccione | 'Credenciales SSH' | | |
| Anfitrión: | 127.0.0.1 | Puerto: | 22 |
| Usuario: | <Nombre de usuario de Linux> | | |
| Tipo de autorización: | 'Contraseña' | | |
| Contraseña: | <Contraseña de Linux> | | |
| Ruta del intérprete de Python: | <Ruta de Linux a su virtualenv> | | |
| Ruta de ayuda de Python: | <Establecer automáticamente> | | |
+ -------------------------- + ---------------------- ----------- + ------- + ---- +
Ahora, cuando abre su proyecto, su bash se inicia automáticamente en su virtualenv, abre un túnel ssh y pycharm conecta virtualenv como intérprete remoto.
advertencia: la última actualización en Windows inicia automáticamente un servicio SshBroker y SshProxy al inicio. Estos bloquean el túnel ssh desde Linux a Windows. Puede detener estos servicios en el Administrador de tareas -> Servicios, después de lo cual todo volverá a funcionar.
~/pycharmenv/bin/terminalactivate
suena como una buena opción.