web-dev-qa-db-de.com

Konfigurieren von Visual Studio-Code für Remote-Python-Interpreter über SSH

Ich habe eine Vagrant-Box mit ArchLinux und Python, die pro Projekt eine virtuelle Umgebung verwendet (unter Verwendung einer bestimmten Python-Version). Ich möchte VSC für das Ausführen/Debuggen dieser Python-Projekte konfigurieren. Ich habe das Verzeichnis mit meinen Projekten gemountet (mit sshfs ), damit ich mich nicht um die Synchronisierung kümmern muss.

Bei PyCharm erfolgt die Konfiguration nur in der IDE. Wie kann ich es mithilfe von SSH für VSC konfigurieren? Was sind andere Plugins, um mit Python zu arbeiten?

Danke im Voraus.

PS1: PyCharm ist ein großartiges Werkzeug, erfordert jedoch viele Ressourcen, in der Nähe von 1 GB RAM.

PS2: Ich habe diesen Artikel gelesen, aber mir ist nicht klar, ein Beispiel ist sinnvoller.

EDIT: Ich habe hier eine neue und verbesserte Antwort auf diese Frage geschrieben: vscode Python-Ferninterpreter

Mit dem VScode-Terminal können Sie den Python-Code auf einem Remote-Computer über SSH ausführen mit: 

cat hello_world.py | ssh [email protected] python - 

Sie können dies als Ihre VSCode-Buildaufgabe hinzufügen, wobei ${file} auf die aktuelle Datei zeigt. Wenn Sie Remote-Debugging in VScode benötigen, können Sie die folgenden Schritte lesen: code.visualstudio.com/docs/python/debugging#_remote-debugging

Darüber hinaus können Sie auch eine alias oder function in Ihrer .bashrc- oder .zshrc-Datei erstellen, die die Ausführung von Dateien auf einem Remote-Computer, möglicherweise in einer virtuellen Umgebung, komfortabler macht. Beispielsweise enthält meine .zshrc-Datei die folgende Funktion zum Ausführen von Python-Dateien auf meiner Workstation in einer Remote-Virtualenv:

function remote-pytorch () {
    cat $1 | ssh [email protected] 'source ~/virtualenv/pytorch/bin/activate && python -'
}

Auf diese Weise kann ich einfach den folgenden Befehl ausführen, um das Skript remote auszuführen:

remote-pytorch train_network.py

(Hinweis: Die Syntax für Funktionen unterscheidet sich geringfügig in .bashrc-Dateien.)

1
verified.human