に参加して、VS Code の AI 支援開発について学びましょう。

コンテナツール拡張機能をカスタマイズする

Container Tools拡張機能には、Dockerのビルド実行の動作を制御し、デバッグのためのコンテナ起動の基盤を形成するいくつかのVisual Studio Codeタスクが含まれています。

これらのタスクは、多くの制御とカスタマイズを可能にします。最終的な構成は、一般的なデフォルト、プラットフォーム固有のデフォルト (Node.js、Python、.NETなど)、およびユーザー入力の組み合わせです。ユーザー入力は、デフォルトと競合する場合に優先されます。

Visual Studio Codeタスクのすべての共通機能 (たとえば、タスクを複合タスクにグループ化するなど) は、Container Tools拡張機能のタスクでサポートされています。共通タスクの機能とプロパティの詳細については、Visual Studio Codeのカスタムタスクのドキュメントを参照してください。

Dockerビルドタスク

docker-buildタスクは、Dockerコマンドライン (CLI) を使用してイメージをビルドします。このタスクは単独で使用することも、コンテナ内でアプリケーションを実行したりデバッグしたりするためのタスクチェーンの一部として使用することもできます。

docker-buildタスクの最も重要な構成設定は、dockerBuildplatformです。

  • dockerBuildオブジェクトは、Dockerビルドコマンドのパラメータを指定します。このオブジェクトで指定された値は、DockerビルドCLIの呼び出しに直接適用されます。
  • platformプロパティは、docker-buildタスクがDockerビルドのデフォルトをどのように決定するかを変更するヒントです。

すべてのタスクプロパティの完全なリストについては、プロパティリファレンスを参照してください。

プラットフォームサポート

tasks.jsondocker-buildタスクは任意のイメージをビルドするために使用できますが、この拡張機能はNode.js、Python、および.NET Coreを明示的にサポートしており (構成が簡素化されています)、

Node.js (docker-build)

デフォルトを使用した最小限の構成

特定のプラットフォームオプションがないNode.jsベースのイメージは、platformプロパティをnodeに設定するだけで済みます。

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "Build Node Image",
      "type": "docker-build",
      "platform": "node"
    }
  ]
}

プラットフォームのデフォルト

Node.jsベースのイメージの場合、docker-buildタスクは次のオプションを推論します。

プロパティ 推論された値
dockerBuild.context package.jsonが存在するのと同じディレクトリ。
dockerBuild.dockerfile package.jsonが存在するのと同じディレクトリにあるファイルDockerfile
dockerBuild.tag package.json内のアプリケーションのnameプロパティ (定義されている場合)。定義されていない場合は、package.jsonが存在するフォルダのベース名。
dockerBuild.pull ビルド前に新しいベースイメージをプルするために、デフォルトでtrue。

Python (docker-build)

デフォルトを使用した最小限の構成

特定のプラットフォームオプションがないPythonベースのイメージは、platformプロパティをpythonに設定するだけで済みます。

{
  "tasks": [
    {
      "type": "docker-build",
      "label": "docker-build",
      "platform": "python"
    }
  ]
}

プラットフォームのデフォルト

Pythonベースのイメージの場合、docker-buildタスクは次のオプションを推論します。

プロパティ 推論された値
dockerBuild.context デフォルトのコンテキストはワークスペースフォルダです。
dockerBuild.dockerfile デフォルトのDockerfileパスは、ワークスペースフォルダのルートにあります。
dockerBuild.tag ルートワークスペースフォルダのベース名。
dockerBuild.pull ビルド前に新しいベースイメージをプルするために、デフォルトでtrue。

.NET (docker-build)

デフォルトを使用した最小限の構成

.NETベースのイメージをビルドする場合、platformプロパティを省略してnetCoreオブジェクトを設定するだけで済みます (netCoreオブジェクトが存在する場合、platformは暗黙的にnetcoreに設定されます)。appProjectは必須プロパティであることに注意してください。

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "Build Node Image",
      "type": "docker-build",
      "netCore": {
        "appProject": "${workspaceFolder}/project.csproj"
      }
    }
  ]
}

プラットフォームのデフォルト

.NETベースのイメージの場合、docker-buildタスクは次のオプションを推論します。

プロパティ 推論された値
dockerBuild.context ルートワークスペースフォルダ。
dockerBuild.dockerfile ルートワークスペースフォルダ内のファイルDockerfile
dockerBuild.tag ルートワークスペースフォルダのベース名。
dockerBuild.pull ビルド前に新しいベースイメージをプルするために、デフォルトでtrue。

ビルドタスクリファレンス

docker-buildタスクの構成に利用できるすべてのプロパティを以下に示します。特に明記されていない限り、すべてのプロパティはオプションです。

プロパティ 説明
dockerBuild 実行されるdocker buildコマンドを制御するためのオプション (下記参照)。
platformが設定されていない限り必須。
platform プラットフォーム (.NET (netcore) またはNode.js (node)) とdocker buildコマンドのデフォルト設定を決定します。
node Node.jsプロジェクトに固有のオプションを決定します (下記参照)。
python docker-buildタスクのPythonにはオブジェクトプロパティはありません。
netCore .NETプロジェクトに固有のオプションを決定します (下記参照)。

dockerBuildオブジェクトプロパティ

プロパティ 説明 docker build CLI同等
context ビルドコンテキストへのパス。
プラットフォームから推論されない限り必須。
PATH
dockerfile Dockerfileへのパス。
プラットフォームから推論されない限り必須。
-f または --file
tag イメージに適用されるタグ。
プラットフォームから推論されない限り必須。
-t または --tag
buildArgs コマンドラインに適用されるビルド引数。これはキーと値のペアのリストです。 --build-arg
labels イメージに追加されるラベル。これはキーと値のペアのリスト (JSONオブジェクト) です。
ここで指定されたラベルに加えて、com.microsoft.created-byというラベルがイメージに追加され、visual-studio-codeに設定されます。この動作は、labelsオブジェクトのincludeDefaultsプロパティをfalseに設定することでオフにできます。
--label
target ビルド対象となるDockerfile内のターゲット。 --target
pull ビルド前に新しいベースイメージをプルするかどうか。 --pull
customOptions コンテキスト引数の前に追加する任意の追加パラメーター。他のオプションとの競合を解決したり、このオプションを検証したりする試みは行われません。 (任意)

nodeオブジェクトプロパティ (docker-buildタスク)

プロパティ 説明 既定値
package Dockerfileとdocker-buildタスクに関連付けられたpackage.jsonファイルへのパス。 ルートワークスペースフォルダ内のファイルpackage.json

netCoreオブジェクトプロパティ (docker-buildタスク)

プロパティ 説明
appProject Dockerfileとdocker-buildタスクに関連付けられた.NETプロジェクトファイル (.csproj.fsprojなど)。
常に必須。

Docker実行タスク

tasks.jsondocker-runタスクは、Dockerコマンドライン (CLI) を使用してコンテナを作成および起動します。このタスクは単独で使用することも、コンテナ内でアプリケーションをデバッグするためのタスクチェーンの一部として使用することもできます。

docker-runタスクの最も重要な構成設定は、dockerRunplatformです。

  • dockerRunオブジェクトは、Docker実行コマンドのパラメータを指定します。このオブジェクトで指定された値は、Docker実行CLIの呼び出しに直接適用されます。
  • platformプロパティは、docker-runタスクがDocker実行のデフォルトをどのように決定するかを変更するヒントです。

すべてのタスクプロパティの完全なリストについては、プロパティリファレンスを参照してください。

Docker実行プラットフォームサポート

docker-runタスクは任意のDockerイメージを実行するために使用できますが、この拡張機能はNode.js、Python、および.NETを明示的にサポートしており (構成が簡素化されています)、

Node.js (docker-run)

デフォルトを使用した最小限の構成

特定のプラットフォームオプションがないNode.jsベースのイメージは、platformプロパティをnodeに設定するだけで済みます。

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "Run Node Image",
      "node": "docker-run",
      "platform": "node"
    }
  ]
}

プラットフォームのデフォルト

Node.jsベースのイメージの場合、docker-runタスクは次のオプションを推論します。

プロパティ 推論された値
dockerRun.command package.json内のnpm startスクリプト (存在する場合) から生成されます。存在しない場合は、package.json内のmainプロパティから生成されます。
dockerRun.containerName アプリケーションのパッケージ名から派生します。
dockerRun.image 依存するdocker-buildタスク (存在する場合) からのタグ、またはアプリケーションのパッケージ名から派生します。このパッケージ名は、package.json内のnameプロパティ、またはそれが存在するフォルダのベース名から派生します。

Python (docker-run)

Pythonベースのイメージをビルドする場合、platformプロパティを省略してpythonオブジェクトを設定するだけで済みます (pythonオブジェクトが存在する場合、platformは暗黙的にpythonに設定されます)。

Djangoアプリの最小構成

{
  "type": "docker-run",
  "label": "docker-run: debug",
  "dependsOn": ["docker-build"],
  "python": {
    "args": ["runserver", "0.0.0.0:8000", "--nothreading", "--noreload"],
    "file": "path_to/manage.py"
  }
}

Flaskアプリの最小構成

{
  "type": "docker-run",
  "label": "docker-run: debug",
  "dependsOn": ["docker-build"],
  "dockerRun": {
    "env": {
      "FLASK_APP": "path_to/flask_entry_point.py"
    }
  },
  "python": {
    "args": ["run", "--no-debugger", "--no-reload", "--host", "0.0.0.0", "--port", "5000"],
    "module": "flask"
  }
}

一般アプリの最小構成

{
  "type": "docker-run",
  "label": "docker-run: debug",
  "dependsOn": ["docker-build"],
  "python": {
    "file": "path_to/app_entry_point.py"
  }
}

プラットフォームのデフォルト

Pythonベースのイメージの場合、docker-runタスクは次のオプションを推論します。

プロパティ 推論された値
dockerRun.command Pythonオブジェクトによって生成され、Pythonデバッガーによって呼び出されます。
dockerRun.containerName ルートワークスペースフォルダのベース名から派生します。
dockerRun.image 依存するdocker-buildタスク (存在する場合) からのタグ、またはルートワークスペースフォルダのベース名から派生します。

.NET (docker-run)

デフォルトを使用した最小限の構成

.NETベースのイメージをビルドする場合、platformプロパティを省略してnetCoreオブジェクトを設定するだけで済みます (netCoreオブジェクトが存在する場合、platformは暗黙的にnetcoreに設定されます)。appProjectは必須プロパティであることに注意してください。

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "Run .NET Core Image",
      "type": "docker-run",
      "netCore": {
        "appProject": "${workspaceFolder}/project.csproj"
      }
    }
  ]
}

プラットフォームのデフォルト

.NETベースのイメージの場合、docker-runタスクは次のオプションを推論します。

プロパティ 推論された値
dockerRun.containerName ルートワークスペースフォルダのベース名から派生します。
dockerRun.env 必要に応じて、ASPNETCORE_ENVIRONMENTASPNETCORE_URLS、およびDOTNET_USE_POLLING_FILE_WATCHERの環境変数を追加します。
dockerRun.image 依存するdocker-buildタスク (存在する場合) からのタグ、またはルートワークスペースフォルダのベース名から派生します。
dockerRun.os Linux
dockerRun.volumes 必要に応じて、ローカルアプリケーションフォルダ、ソースフォルダ、デバッガーフォルダ、NuGetパッケージフォルダ、NuGetフォールバックフォルダのボリュームを追加します。

実行タスクリファレンス

docker-runタスクの構成に利用できるすべてのプロパティを以下に示します。特に明記されていない限り、すべてのプロパティはオプションです。

プロパティ 説明
dockerRun 実行されるdocker runコマンドを制御するためのオプション (下記参照)。
platformが設定されていない限り必須。
platform プラットフォーム (.NET (netcore) またはNode.js (node)) とdocker runコマンドのデフォルト設定を決定します。
node Node.jsプロジェクトの場合、これは様々なオプションを制御します (下記参照)。
python Pythonプロジェクトの場合、これは様々なオプションを制御します (下記参照)。
netCore .NETプロジェクトの場合、これは様々なオプションを制御します (下記参照)。

dockerRunオブジェクトプロパティ

プロパティ 説明 CLI同等
image 実行するイメージの名前 (タグ)。
プラットフォームから推論されない限り必須。
IMAGE
コマンド コンテナ起動時に実行するコマンド。
プラットフォームから推論されない限り必須。
COMMAND [ARG...]
containerName 起動されたコンテナに与えられた名前。
プラットフォームから推論されない限り必須。
--name
環境 コンテナに設定される環境変数。これはキーと値のペアのリストです。 -e または --env
envFiles これは.envファイルのリストです。 --env-file
labels 起動されたコンテナに与えられたラベル。これはキーと値のペアのリストです。 --label
network コンテナが接続されるネットワークの名前。 --network
networkAlias 起動されたコンテナのネットワークスコープエイリアス。 --network-alias
os デフォルトはLinuxで、他のオプションはWindowsです。使用されるコンテナオペレーティングシステム。 N/A
ports コンテナからホストに公開 (マップ) するポート。これはオブジェクトのリストです (下記参照)。 -p または --publish
portsPublishAll Dockerイメージによって公開されているすべてのポートを公開するかどうか。ポートが明示的に公開されていない場合、デフォルトはtrueです。 -P
extraHosts DNS解決のためにコンテナに追加するホスト。これはオブジェクトのリストです (下記参照)。 --add-host
volumes 起動されたコンテナにマップするボリューム。これはオブジェクトのリストです (下記参照)。 -v または --volume
remove コンテナ停止後に削除するかどうか。 --rm
customOptions イメージ引数の前に追加する任意の追加パラメーター。他のオプションとの競合を解決したり、このオプションを検証したりする試みは行われません。 (任意)

portsオブジェクトプロパティ

プロパティ 説明 既定値
containerPort コンテナ上でバインドされているポート番号。
必須。
hostPort ホスト上でバインドされているポート番号。 (Dockerによってランダムに選択されます)
protocol バインディングのプロトコル (tcpまたはudp)。 tcp

extraHostsオブジェクトプロパティ

プロパティ 説明
hostname DNS解決のためのホスト名。
必須。
ip 上記のホスト名に関連付けられたIPアドレス。
必須。

volumesオブジェクトプロパティ

プロパティ 説明 既定値
localPath マップされるローカルマシン上のパス。
必須。
containerPath ローカルパスがマップされるコンテナ内のパス。
必須。
permissions コンテナがマップされたパスに対して持つアクセス許可。ro (読み取り専用) またはrw (読み書き) を指定できます。 コンテナに依存。

nodeオブジェクトプロパティ (docker-runタスク)

プロパティ 説明 既定値
package docker-runタスクに関連付けられたpackage.jsonファイルへのパス。 ルートワークスペースフォルダ内のファイルpackage.json
enableDebugging コンテナ内でデバッグを有効にするかどうか。 false
inspectMode アプリケーションとデバッガー間の初期インタラクションを定義します (defaultまたはbreak)。
defaultは、デバッガーがアタッチされるまでアプリケーションを実行させます。
breakは、デバッガーがアタッチされるまでアプリケーションの実行を停止させます。
default
inspectPort デバッグが発生するポート。 9229

pythonオブジェクトプロパティ (docker-runタスク)

プロパティ 説明 既定値
args Pythonアプリに渡される引数。 プラットフォームに依存します。足場設定のデフォルトは上記に示されています。
debugPort デバッガーがリッスンするポート。 5678
wait デバッガーがアタッチされるのを待つかどうか。 true
module 実行するPythonモジュール (モジュール**または**ファイルのみを選択する必要があります)。
file 実行するPythonファイル (モジュール**または**ファイルのみを選択する必要があります)。

netCoreオブジェクトプロパティ (docker-runタスク)

プロパティ 説明
appProject docker-runタスクに関連付けられた.NETプロジェクトファイル (.csproj.fsprojなど)。
必須。
configureSsl ASP.NET Core SSL証明書およびその他の設定を構成して、コンテナ内のサービスでSSLを有効にするかどうか。
enableDebugging 起動されたコンテナでデバッグを有効にするかどうか。これにより、デバッグに必要な追加のボリュームマッピングおよびその他のオプションが推論されます。

Docker Composeタスク

tasks.jsondocker-composeタスクは、Docker Composeコマンドライン (CLI) を使用してコンテナを作成および起動します。このタスクは単独で使用することも、コンテナ内でアプリケーションをデバッグするためのタスクチェーンの一部として使用することもできます。

docker-composeタスクの最も重要な構成設定はdockerComposeです。

  • dockerComposeオブジェクトは、Docker Composeコマンドのパラメータを指定します。このオブジェクトで指定された値は、Docker Compose CLIの呼び出しに直接適用されます。

すべてのタスクプロパティの完全なリストについては、プロパティリファレンスを参照してください。

構成例

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "Run docker-compose up",
      "type": "docker-compose",
      "dockerCompose": {
        "up": {
          "detached": true,
          "build": true,
          "services": ["myservice"]
        },
        "files": [
          "${workspaceFolder}/docker-compose.yml",
          "${workspaceFolder}/docker-compose.debug.yml"
        ]
      }
    }
  ]
}

Composeタスクリファレンス

docker-composeタスクの構成に利用できるすべてのプロパティを以下に示します。特に明記されていない限り、すべてのプロパティはオプションです。

プロパティ 説明
dockerCompose 実行されるdocker-composeコマンドを制御するためのオプション (下記参照)。
必須。

dockerComposeオブジェクトプロパティ

プロパティ 説明 CLI同等
up docker-compose upコマンドを実行します。
これとdownのどちらか一方のみを指定する必要があり、両方を指定することはできません。
docker-compose up
down docker-compose downコマンドを実行します。
これとupのどちらか一方のみを指定する必要があり、両方を指定することはできません。
docker-compose down
files docker-composeコマンドで使用するDocker Compose YAMLファイルのリスト。指定しない場合、Docker Compose CLIはdocker-compose.ymldocker-compose.override.ymlを探します。 -f <file>
envFile 読み込まれてコンテナに適用される環境変数のファイル。 --env-file <file>
projectName Dockerオブジェクトの命名とラベル付けに使用する代替プロジェクト名。compose up時に代替プロジェクト名を使用する場合、compose down時も同じプロジェクト名を指定する必要があります。 --project-name <name>

upオブジェクトプロパティ

プロパティ 説明 CLI同等 既定値
detached デタッチして実行するかどうか。 -d true
build 実行前にビルドするかどうか。 --build true
scale 各サービスで実行するインスタンスの数。これはキーと値のペアのリストです。 --scale SERVICE=NUM
services 開始するサービスの一部。profilesと組み合わせることはできません。 [SERVICE...] (すべて)
profiles 開始するプロファイルの一部。servicesと組み合わせることはできません。 --profile <profile> (すべて)
customOptions up引数の後に追加する任意の追加パラメーター。他のオプションとの競合を解決したり、このオプションを検証したりする試みは行われません。 (任意)

downオブジェクトプロパティ

プロパティ 説明 CLI同等 既定値
removeImages イメージを削除するかどうか、およびどのイメージを削除するか。allはすべてのサービスによって使用されるすべてのイメージを削除し、localはカスタムタグのないイメージのみを削除します。これを設定しない場合、イメージは削除されません。 --rmi
removeVolumes 名前付きボリュームを削除するかどうか。 -v false
customOptions down引数の後に追加する任意の追加パラメーター。他のオプションとの競合を解決したり、このオプションを検証したりする試みは行われません。 (任意)

コマンドのカスタマイズ

コンテナツール拡張機能は、イメージのビルド、コンテナの実行、コンテナへのアタッチ、コンテナログの表示など、さまざまな操作を実行する際に多数のDocker CLIコマンドを実行します。これらのコマンドの中には、非常に特定のシナリオでよく使用される多数のオプション引数を持つものがあります。上記のVisual Studio Codeタスクの代替として、タスクが使用されていない場合にいくつかのコマンドをカスタマイズできます。

たとえば、Compose Upコマンドのトークン${serviceList}${profileList}を使用すると、Docker Compose YAMLファイル内のサービスの一部を簡単に起動できます。

これらのカスタマイズ可能なDockerコマンドそれぞれについて、実行するテンプレートを設定するための構成設定が用意されています。あるいは、正規表現を付けて複数のテンプレートを定義することもできます。正規表現が一致した場合、テンプレートを使用するコンテキストが示唆されます。テンプレートは、launch.jsontasks.jsonと同様に、たとえば${workspaceFolder}などのトークンをサポートしています。

設定JSONスキーマ

各テンプレート (下記参照) を構成するためのオプションは2つあります。最初のオプションは、デフォルトの動作を上書きする単一のテンプレートです。

{
  "containers.commands.build": "docker build --rm -f \"${dockerfile}\" -t ${tag} \"${context}\""
}

2番目のオプションは、match正規表現とユーザー入力に基づいて選択される複数のテンプレートです。

たとえば、次の例では3つのテンプレートが示されています。

{
  "containers.commands.build": [
    {
      "label": "Default build command",
      "template": "docker build --rm -f \"${dockerfile}\" -t ${tag} \"${context}\""
    },
    {
      "label": "Alpine-specific build command",
      "template": "docker build -p 1234:1234 -f \"${dockerfile}\" -t ${tag} \"${context}\"",
      "match": "alpine"
    }
  ]
}

選択動作

実行するコマンドテンプレートは、次のルールに基づいて選択されます。

  1. 設定が構成されていない場合は、デフォルトのコマンドテンプレートが選択されます。
  2. 単一のテンプレートのみが構成されている場合 (上記の最初の例)、そのテンプレートが選択されます。
  3. 複数のテンプレートが構成されている場合
    1. 制約付きテンプレートがチェックされます。制約付きテンプレートにはmatchがあります。match正規表現は、コンテキストのヒント (たとえば、イメージ名、コンテナ名など) と比較されます。
    2. 複数の制約付きテンプレートが適用される場合、ユーザーは選択を促されます。1つだけ適用される場合、ユーザーは促されません。
    3. 適用可能な制約付きテンプレートがない場合、無制約テンプレートがチェックされます。無制約テンプレートにはmatchがなく、したがって常に適用可能です。
    4. 複数の無制約テンプレートが適用される場合、ユーザーは選択を促されます。1つだけ適用される場合、ユーザーは促されません。

Docker Build

構成設定 デフォルト値
docker.commands.build ${containerCommand} build --rm -f "${dockerfile}" -t ${tag} "${context}"

サポートされているトークン

トークン 説明
${containerCommand} コンテナコマンドの実行に使用されるCLIコマンド/実行可能ファイル。
${dockerfile} 選択されたDockerfileのワークスペース相対パス。
${tag} ビルドコマンドの呼び出し時にユーザーが入力/確認した値。以前にビルドされた場合、そのDockerfileの以前に入力された値がデフォルトになります。
${context} 設定されている場合、containers.imageBuildContextPath構成設定の値。それ以外の場合、Dockerfileが存在するワークスペース相対フォルダ。

: containers.commands.build設定に${tag}トークンが含まれていない場合、ユーザーはタグの入力/確認を促されません

: match正規表現は、選択されたDockerfile名とワークスペースフォルダ名と比較されます。

Docker Run

構成設定 デフォルト値
containers.commands.run ${containerCommand} run --rm -d ${exposedPorts} ${tag}
containers.commands.runInteractive ${containerCommand} run --rm -it ${exposedPorts} ${tag}

サポートされているトークン

トークン 説明
${containerCommand} コンテナコマンドの実行に使用されるCLIコマンド/実行可能ファイル。
${exposedPorts} イメージ内の公開ポートのリスト (最終的にはDockerfileから) から生成され、各公開ポートはローカルマシン上の同じポートにマップされます。たとえば、"EXPOSE 5000 5001""-p 5000:5000 -p 5001:5001"を生成します。
${tag} 選択されたイメージの完全なタグ。

: match正規表現は、選択されたイメージの完全なタグと比較されます。

Container Attach

構成設定 デフォルト値
containers.commands.attach ${containerCommand} exec -it ${containerId} ${shellCommand}

サポートされているトークン

トークン 説明
${containerCommand} コンテナコマンドの実行に使用されるCLIコマンド/実行可能ファイル。
${containerId} アタッチするコンテナのID。
${shellCommand} コンテナにbashが存在する場合はここに置換され、そうでない場合はshが置換されます。Windowsコンテナでは、常にcmdが使用されます。

: match正規表現は、コンテナ名とコンテナイメージの完全なタグと比較されます。

Container Logs

構成設定 デフォルト値
containers.commands.logs ${containerCommand} logs -f ${containerId}

サポートされているトークン

トークン 説明
${containerCommand} コンテナコマンドの実行に使用されるCLIコマンド/実行可能ファイル。
${containerId} ログを表示するコンテナのID。

: match正規表現は、コンテナ名とコンテナイメージの完全なタグと比較されます。

Docker Compose Up

構成設定 デフォルト値
containers.commands.composeUp ${composeCommand} ${configurationFile} up ${detached} ${build}

サポートされているトークン

トークン 説明
${configurationFile} -fと、選択されたDocker Compose YAMLファイルへのワークスペース相対パスに設定されます。
${detached} 構成設定containers.composeDetachedtrueに設定されている場合、-dに設定されます。それ以外の場合、""に設定されます。
${build} 構成設定containers.composeBuildtrueに設定されている場合、--buildに設定されます。それ以外の場合、""に設定されます。
${serviceList} 指定されている場合、コマンド実行時に開始するサービスの一部をプロンプトで確認します。
${profileList} 指定されており、Docker Compose YAMLファイルにプロファイルが含まれている場合、コマンド実行時に開始するプロファイルの一部をプロンプトで確認します。
${composeCommand} containers.composeCommand設定の値が設定されている場合、その値に設定されます。設定されていない場合、拡張機能は使用するコマンド (docker composeまたはdocker-compose) を自動的に決定しようとします。

Docker Compose Down

構成設定 デフォルト値
containers.commands.composeDown ${composeCommand} ${configurationFile} down

サポートされているトークン

トークン 説明
${configurationFile} -fと、選択されたDocker Compose YAMLファイルへのワークスペース相対パスに設定されます。
${composeCommand} containers.composeCommand設定の値が設定されている場合、その値に設定されます。設定されていない場合、拡張機能は使用するコマンド (docker composeまたはdocker-compose) を自動的に決定しようとします。

追加のサポートされているトークン

コマンド固有のサポートされているトークンに加えて、次のトークンはすべてのコマンドテンプレートでサポートされています。

トークン 説明
${workspaceFolder} 選択されたワークスペースフォルダのパス。
${config:some.setting.identifier} 文字列、数値、またはブール値である限り、任意の構成設定の値。これらの設定識別子は任意に定義でき、Visual Studio Codeや任意の拡張機能に属する必要はありません。
${env:Name} 環境変数の値。
${command:commandID} コマンドの文字列戻り値。
© . This site is unofficial and not affiliated with Microsoft.