LoginSignup
1
0
はじめての記事投稿

VSCodeでdevcontainerが開けなくなった(SyntaxError: Unexpected end of JSON input)

Last updated at Posted at 2023-07-20

初めまして、fsd-shoyaです。
初投稿になりますので間違いなどありましたらお知らせ下さい。
今回は、devcontainerで詰まってしまった原因と解決策について投稿させて頂きます。

はじまり

いつも通りVSCodeを起動して、作業を開始しようとしたら、devcontainerが開けず、

SyntaxError: Unexpected end of JSON input
at JSON.parse (<anonymous>)
at n6 (/Users/fsd-shoya/.vscode/extensions/ms-vscode-remote.remote-containers-0.295.0/dist/extension/extension.js:224:1268)
at process.processTicksAndRejections (node:internal/process/task_queues:96:5)
at async t6 (/Users/fsd-shoya/.vscode/extensions/ms-vscode-remote.remote-containers-0.295.0/dist/extension/extension.js:220:733)
at async vm (/Users/fsd-shoya/.vscode/extensions/ms-vscode-remote.remote-containers-0.295.0/dist/extension/extension.js:194:9112)
at async Wbe (/Users/fsd-shoya/.vscode/extensions/ms-vscode-remote.remote-containers-0.295.0/dist/extension/extension.js:288:7491)
at async DK (/Users/fsd-shoya/.vscode/extensions/ms-vscode-remote.remote-containers-0.295.0/dist/extension/extension.js:288:6424)
at async BO (/Users/fsd-shoya/.vscode/extensions/ms-vscode-remote.remote-containers-0.295.0/dist/extension/extension.js:279:4972)

のようなエラーが生じ、解決しようと藻掻いていると、数時間が経ってしまいました。
実行環境はwsl+VSCode+Docker+devcontainerです。

原因

エラー文の最初の行を見ると、JSON入力のエラーであると分かります。
どの入力でエラーが生じたのかを確認するために、直前のログを確認すると、

Start: Run in container: cat '/home/node/.vscode-server/bin/695af097c7bd098fbf017ce3ac85e09bbc5dda06/product.json'

となっているので、
/home/node/.vscode-server/bin/695af097c7bd098fbf017ce3ac85e09bbc5dda06/product.json
の入力でエラーが生じたようです。

解決策

エラーが生じたJSONファイルのあるディレクトリを削除しました。

wsl
//コンテナー内で作業する
docker run -it --rm -v vscode:/vscode ubuntu
//対象のディレクトリがあるか確認
ls -l /vscode/vscode-server/bin/linux-x64/695af097c7bd098fbf017ce3ac85e09bbc5dda06/
//対象のディレクトリを削除
rm -rf /vscode/vscode-server/bin/linux-x64/695af097c7bd098fbf017ce3ac85e09bbc5dda06/

/vscode/vscode-server/bin/linux-x64/695af097c7bd098fbf017ce3ac85e09bbc5dda06/
太字の部分は、エラーが生じたファイルパスを参照して下さい。


学んだこと

  • wsl上で直接コンテナーの中身を触ることは出来ない。
  • 赤字のエラー文のみでなく、どこでエラーが起こっているかを特定するべき。

以上になります。
どなたかの参考になれば幸いです。

参考資料

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0