質問: ### 前提・実現したいこと 質問文の通りです。 現在、開発環境として、VSCodeを使って、外部サーバーとの共有フォルダ内のコードを編集して開発を行っています。 しかし、VSCode内でデバッグを行う場合、外部サーバと環境が異なるために、弊害が起こることがあります。 外部サーバの環境内でコードのテスト実行を行いたいのですが、何かよい方法はありますでしょうか。 お詳しい方宜しくお願い致します。
回答: サーバOSなど環境が不明ですが、サーバー`RaspberryPi(Rpi)`=Linux系OS、クライアント`Win64`上の`VS2015`であれば以下のような流れでリモートデバッグ可能です。 `VSCode`でできるかは未確認です。 参考:Python Tools for Visual Studioを使って、Raspberry Pi 上のPythonをリモートデバッグする #### サーバ(Rpi)側の準備 * `Rpi`に`ptvsd`をインストールする。 ``` $ pip install ptvsd Downloading/unpacking ptvsd : Successfully installed ptvsd ``` * サーバ側(192.xxx.xx.x)にファイアウォールあれば、TCP5678へ接続できるように。 ``` $ sudo ufw allow from 192.xxx.xx.x/24 to any port 5678 ``` #### デバッグ対象コード * 実行開始時、デバッガ接続を待つようにする。 debug_test.py ``` import ptvsd ptvsd.enable_attach(secret = 'hoge') # 後に必要なsecret値「hoge」 ptvsd.wait_for_attach() # 実際の処理 ``` #### リモートデバッグ実行手順 * Rpi側で対象コードを実行する。実行すると、デバッガ接続待ち状態になる。 ``` $python debug_test.py ``` * クライアント側でVSを起動し「プロセスにアタッチ」する。 アタッチ対象はトランスポート「Python remote(ptvsd)」 修飾子「@」と入力しアタッチ先を選択して「アタッチ」を実行。 #### 他の事例 ubuntuでの例:Linux 上のPython アプリケーションをVisual Studio からリモートデバッグ PyCharm(python用の統合開発環境)での例:PyCharmのリモートデバッグ機能を使ってみる