VSCode と SSH を使用したリモート開発

VSCode と SSH を使用したリモート開発

0. リモート開発が必要な理由

組み込み Linux を開発する場合、便宜上、通常は Windows 上のコード エディターを使用してコードを編集し、クロスコンパイル ツールは Linux 仮想マシンまたはサーバー上に配置します。開発中は、次のループ操作を継続的に実行する必要があります。

  • コードを編集した後、SSH ベースの SCP を使用してファイルをサーバーにアップロードします。
  • SSH リモート ターミナルを使用して、サーバー上で実行可能ファイルをコンパイルします。
  • コンパイルが完了したら、SSH ベースの SCP を使用してファイルをローカル コンピューターに転送します。

これらの操作はすべて SSH に基づいていますが、ターミナル ソフトウェア、ファイル転送ソフトウェア、および継続的な切り替え操作が必要になるため、プロセスが非常に面倒になります。

ローカル エディターが SSH 経由でリモート サーバーのディレクトリを直接開き、ファイルを操作し、コマンドを実行できる場合、これをリモート開発と呼びます。リモート開発を使用すると、開発プロセスが大幅に容易になります。

1. Visual Studio Code リモート – SSH 拡張機能

Remote Development extension pack 、今年 5 月に VS Code によってリリースされた拡張機能です。この拡張機能には、次の 3 つの拡張機能が含まれています。

  • リモート - SSH
  • リモート - コンテナ
  • リモート - WSL

これら 3 つの拡張機能は、リモート コンピューター、コンテナー、または Windows Subsystem for Linux (WSL) を完全に機能するバックグラウンド開発環境として使用することをサポートします。ローカルの VS Code は単なるフロントエンド インターフェイスです。この記事では、図に示すように、主に SSH 拡張機能の使用方法について説明します。

2. SSH拡張機能のインストール

2.1. コマンドラインでsshコマンドが使用できることを確認する

使用しているシステムがWindows10の場合、システムにはすでにSSHがインストールされており、図に示すように、Git の SSH は使用できなくなります。

Windows7使用している場合は、OpenSSH をインストールできません。Git でのみ ssh コマンドを使用できます。Git インストール ディレクトリのusr\binフォルダーをシステム環境変数に追加します。このディレクトリには、ssh コマンドの実行可能プログラムが含まれています。

2.2. Visual Studio Code Insidersバージョンをインストールする

注記:

  • VScode1.35 1.35 以降、SSH 拡張機能は安定バージョンになりました。拡張機能を通常どおり使用して、セクション 2.3 に直接進むことができます。
  • VS Code がこのバージョンより低い場合は、VS Code ベータ バージョンをインストールする必要があります。

VS Code リモート開発拡張機能はまだプレビュー段階なので、VS Code の内部テスト バージョンであるVisual Studio Code Insiders (ダウンロード リンク) をダウンロードしてインストールする必要があります。


2.3. SSH拡張機能をインストールする

VS Code 拡張機能マーケットでremoteを検索し、 Remote-SSHを選択して、「インストール」をクリックします。


3. リモートホストにSSHサーバーをインストールする

! ! !
特記事項: SSH 拡張機能は 64 ビット Linux オペレーティング システムにのみ接続できます。
! ! !
リモート Linux ホストに ssh サーバーをインストールします。

sudo apt-get で openssh-server をインストールします

4. SSH拡張機能を使用する

4.1. ログインターミナルを表示するためのSSH拡張機能の設定

コマンド パレットを開き、 sshと入力して、設定を選択します。


4.2. SSHを起動してリモートホストに接続する

SSH を起動するには 2 つの方法があります。

Ctrl+Shift+Pを使ってコマンドパレットを開き、 sshと入力して、 Connect to Hostを選択します。

左下隅にある ssh アイコンをクリックするだけです。

起動後、リモート ホストのユーザー名と IP アドレスを入力し、Enter キーを押して接続します。

SSH ログイン ターミナルが表示されるので、ユーザーのパスワードを入力するだけです。

初めてログインすると、VS Code はリモート作業用の新しいウィンドウを自動的にポップアップ表示し、リモート ホストに VS Code サーバーを自動的にインストールします。


ログイン プロセス中は、常にパスワードを入力する必要があります。図に示すように、ポップアップが表示されたらパスワードを入力してください。


ログインに成功すると、以下のように表示されます。

4.3. リモートディレクトリをワークスペースとして開く

ファイルビューをクリックします。


次に、開くディレクトリを選択します。


次のように正常に開きます:

4.4. リモートターミナルの使用

新しいターミナルをクリックするだけで Bash が開きます。

4.5. 拡張機能のインストール

リモート開発では、拡張機能はローカル拡張機能とリモート拡張機能に分かれていることに注意してください。

5. よく使うホストを覚えておく

図に示すように、構成ファイルを開きます。


プロフィールを選択してください:


次の形式でコンテンツを入力して保存します。


リモート開発に VSCode と SSH を使用する方法については、これで終わりです。VSCode と SSH リモート開発に関する関連コンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • VSCode で SSH キーを使用してシークレットなしでサーバーにリモートログインする方法
  • VSCode リモート SSH パスワードフリー ログイン構成の実装
  • vscode sshでオーディオを処理するためにlibrosaをインストールする解決策

<<:  すべてまたは逆の選択機能を実現するJavaScript

>>:  アップロード画像コントロールを実現するネイティブ js

推薦する

Vueモバイル端末は左スライド編集と削除の全プロセスを実現します

序文プロジェクトのニーズに応じて、Vue-touch を使用して、vue モバイル端末の左スワイプ編...

WeChatミニプログラムをTencent Mapsに接続する2つの方法

最近、WeChat アプレットを作成しているのですが、いくつか問題が発生しました。インターネットでい...

MySQLユーザーと権限管理の詳細な説明

この記事では、例を使用して MySQL ユーザーと権限の管理について説明します。ご参考までに、詳細は...

IE のテキストモード! DOCTYPE の役割の紹介

前の記事で説明したフォームの自動入力の問題を解決した後、新しい問題が発生しました。ページの一部のスタ...

水平ヒストグラムを作成するための MySQL ソリューション

序文ヒストグラムは、RDBMS によって提供される基本的な統計情報です。最も一般的に使用されるのは、...

Vue フォーム入力バインディング v-model

目次1.vモデル2. プロパティとイベントのバインディング3. フォーム要素のバインディング3.1 ...

Node.js の fs モジュールと Path モジュールのメソッドの詳細な説明

概要:ファイルシステム モジュールは、標準の POSIX ファイル I/O 操作セットをラップしたシ...

vue-router 4 の使用例の詳しい説明

目次1. インスタンスをインストールして作成する2. vue-router4の新機能2.1 動的ルー...

Vue の新しいパートナー TypeScript クイックスタート実践記録

目次1. 公式の足場を使って構築する2. プロジェクトディレクトリ分析3. TypeScript の...

JavaScript はスローモーションアニメーションのカプセル化と使用法を説明します

プロセス分析の実装(1)繰り返して電話をかけるには?答え: 関数をカプセル化して一度だけ呼び出すコー...

GolangでMySQLデータベースを操作するための実装コード

序文Golang は、SQL データベースにアクセスするための database/sql パッケージ...

シングルサインオン制御を実装するためのVueの完全なコード

参考までに、Vue シングル サインオンのデモをご紹介します。詳細を知りたい方のお役に立てれば幸いで...

HTML の基礎必読 - CSS スタイルシートの包括的な理解

CSS (カスケーディング スタイル シート) は、HTML Web ページを美しくするために使用さ...

MySQL テーブルとデータベースでデータを分割する方法

目次1. 縦方向のスライス1.1 垂直データベース1.2 垂直テーブル分割2. 水平(横断)セグメン...