VSCode macのRemote Containerで開くとAn error occurred setting up the container.エラーが発生する

VSCode macのRemote Containerで開くとAn error occurred setting up the container.エラーが発生する

macのVSCodeでRemote Container拡張機能を使ってdocker-composeのコンテナを開くとエラーが発生する場合の対象方法です。

対象

Remote Containers:Open Folder in Containerでコンテナに接続すると以下のエラーがダイアログが表示される。

An error occurred setting up the container.

ターミナルに以下のエラーが表示されている

Command failed: docker-compose -f .../app/.devcontainer/..\docker-compose.yml -f /app/.devcontainer/docker-compose.yml config --services

原因

Windowsで作成した.devcontainerをmacに持ってくると発生します。
Remote Containerは、docker-compose.ymlを実行する際、拡張機能の追加設定を記載した.devcontainer/docker-compose.ymlを上書きで読み込みます。
そこで読み込むdockerーcomposeファイルが.devcontainer/devcontainer.jsonに定義されているのですが、Windowsで接続した際に作られるパスは区切り文字が¥で生成されているため、macで実行するとパスが解決できずにエラーとなります。

解消方法

devcontainerの以下の区切り文字を/に変更します。

"dockerComposeFile": [
    // "..\\docker-compose.yml",
    "../docker-compose.yml",
    "docker-compose.yml"
]

 

プログラミングカテゴリの最新記事