コンテンツにスキップ

VS Code

  1. VS Code
  2. Dev Containers拡張機能 (ms-vscode-remote.remote-containers)
  3. マシン上でDockerまたはPodmanが実行されていること(はじめにを参照)。VS Code Dev ContainersはバックエンドとしてPodmanもサポートしています。
Terminal window
git clone https://github.com/f5-sales-demo/devcontainer.git
code devcontainer

VS Codeが.devcontainer/devcontainer.jsonを検出し、**「コンテナで再度開く」**という通知を表示します。それをクリックするか、コマンドパレットを使用してください:

Dev Containers: Reopen in Container

VS Codeがイメージをビルド(またはプル)し、コンテナを起動し、拡張機能をインストールして、コンテナ内のターミナルを開きます。

.devcontainer/devcontainer.jsonファイルは、VS CodeにDocker Composeを使用するよう指示します:

"dockerComposeFile": ["../docker-compose.yml", "../docker-compose.build.yml"],
"service": "dev",
"workspaceFolder": "/workspace"

devcontainerの設定にはビルドファイルが明示的に含まれているため、「コンテナで再度開く」や「コンテナのリビルド」を使用する際に、VS Codeがイメージをローカルでビルドできます。

拡張機能はコンテナ内に自動的にインストールされます:

拡張機能説明
PythonPython言語サポート
ESLintJavaScript/TypeScriptリンティング
Prettierコードフォーマット
DockerDockerfileとcomposeサポート
TerraformHCL言語サポート
GoGo言語サポート
Rust AnalyzerRust言語サポート
YAMLYAML言語サポート
KubernetesKubernetesマニフェストサポート

拡張機能を追加するには、.devcontainer/devcontainer.jsoncustomizations.vscode.extensions配列を編集してください。

VS Codeはcomposeファイルで定義されたポートを自動的にフォワーディングします。noVNCディスプレイはhttp://localhost:6080/vnc.htmlで利用可能です。ポートの準備ができるとVS Codeが通知します。

追加のポートは、VS Codeのポートパネルからオンデマンドでフォワーディングできます。

VS Code UIよりもコマンドラインを好む場合:

Terminal window
npm install -g @devcontainers/cli
devcontainer up --workspace-folder .
devcontainer exec --workspace-folder . zsh

Dockerfileやcomposeファイルを変更した後:

Dev Containers: Rebuild Container

これによりイメージがリビルドされ、コンテナが再起動されます。名前付きボリューム(workspacehome)はリビルド後も永続化されます。