当サイトは、アフィリエイト広告を利用しています
VScodeの拡張機能をでスクリプトで
一括インストールする方法を調べたので
まとめておく。
VSCodeを使ってコンテナ開発をする場合などに
コンテナ開発環境にVScodeの拡張機能を一括でインストールできる。
プロジェクトに都合等でDev Containersが使えない場合は
docker-composeで作成したコンテナをVScodeからアタッチすることなる。
その場合、スクリプトを流せば拡張機能を一括でインストールすることができる
VScodeの拡張機能「Dev Containers」を使える場合は
VScodeからコンテナを作る場合はそちらで設定した方がいいと思う。
詳しくは下記記事で紹介しています
実際にコンテナを作り、スクリプトで拡張機能を
インストールしてみる
下記のようなプロジェクト構成で試してみる
.|-- Dockerfile|-- app| `-- main.py|-- docker-compose.yml`-- vscode_ex_install.sh
pythonを実行できるコンテナを作成し
pythonのVScode拡張機能をスクリプトで
一括インストールする
FROM python:3.10# /workspaceディレクトリ作成WORKDIR /workspace
version: "3"services:python3:container_name: "container_python3"build:context: .dockerfile: Dockerfilevolumes:- ./:/workspacetty: true
print("hellow world")
動作確認のために作成
PythonのVScode拡張機能がないと動かせない。
コンテナにインストールするVScodeの拡張機能
の識別子を記載する
#!/bin/bash# 拡張機能のIDリストextensions=("ms-python.python""mhutchie.git-graph")# 各拡張機能をインストールfor extension in "${extensions[@]}"; docode --install-extension $extensiondone
拡張機能の識別子は下記に載っている
一つだけの場合は下記のように書くこともできる
code --install-extension ms-python.python
作成したスクリプトを実行できるように
権限を付与しておく
chmod +x vscode_ex_install.sh
コマンドでコンテナを作成する
docker compose up -d
F1でコマンドパレットを開き
「実行中のコンテナにアタッチ」を洗濯
コンテナの拡張機能を確認する
基本はこの二つか、日本語化の一つしかない
状態になっている。
VScodeの拡張機能一括インストールスクリプトを
実行する
vscode_ex_install.shの改行コードが「CRLF」になってる場合は
エラーになるので「LF」にする
コマンドでVScodeの拡張機能インストールができるなら
dcoker-compose内でCOMMANDオプションで指定すれば
コンテナ作成と同時に拡張機能のインストールができるかと思ったが
できない。とうかエラーになる。
まぁ、コンテナ開けた後にスクリプトを一回実行するだけなので
そんなに手間でもないし、一旦これで良しとした。