Docker: VSCode上で完結
Docker操作をVSCode上で完結させる環境構築
やること
- Dockerのインストール(参考記事参照)
- VSCodeのインストール(参考記事参照)
-
VSCodeでの拡張機能および設定(本記事で説明していく)
-
使いたいDockerfileの準備
※ここでは,VSCodeでの設定のみを記述する.
(理由:DockerのインストールもVSCodeのインストールも記述するほどでもなく,参考記事に従えばできる.)
VSCodeでの拡張機能および設定
Docker操作のために追加する拡張機能
- Docker
- Dockerのイメージなどを管理できる
- Remote Container
- 起動させたコンテナを遠隔操作(アクセス)できる
これらが完了すると,左下に><のようなマークが出現する
コンテナへのアクセス手順
- VSCodeを起動
- Dockerのリポジトリ(フォルダ)をVSCode上に開く
- VSCodeの左下にある><マークをクリック(以下のような状態になる)
4.reopen in Containerを選択
初めてDockerをVSCodeで扱う場合のみ以下のようにして設定していく必要がある.
From a predefined container configuration definition...
これを選択.
Show All Definitions...
を選択してすべての候補を参照
Docker from Docker
たくさんの候補の中からこれを選択.
Install zsh
を外す.ここの設定は個々で構わないが,個人的には特にzshが必要とは思わない.
あとは,OKを押すだけ.
細かな設定
先ほどまでの設定でとりあえず,DockerをVSCode上で扱うことができるようにはなったが,せっかくVSCodeを使う以上,便利な拡張機能をDocker上でも使いたい.
- 注意
-
ホストでインストールしている拡張機能すべてがDocker上での拡張機能に反映される訳ではない
-
Dockerは立ち上げるたびに,拡張機能がデフォルト設定に戻されて,毎回インストールが必要となる
-
これらの面倒さをなくすために,先ほどの設定によって生成された設定ファイルの中にあらかじめ,起動時にインストールしておく拡張機能を記述しておく.
- 設定ファイルは
.devcontainer
フォルダのdevcontainer.json
ファイルである.
赤で示したところに,インストールしておきたい拡張機能のIDを記述する.IDは拡張機能インストールする画面で確認できる.
赤枠で示したところがIDである.VSCodeを日本語化しているとIDではなく識別子と表記されている.
例えば,Pythonの拡張機能をインストールしておくとすると,以下のように追加する.
"extensions": [
"ms-python.python"
]
この変更を加えると,リビルドが必要となる.このリビルドはDockerfileのビルドもおこなうものであるため,Dockerfile変更時には使うことになる.
リビルドについてもクリック作業でできる.
動作テスト
前回の記事でもテストしたが,ここでもRviz(ROS1)の起動を動作テストとする.
Rvizもうまく起動している.
感想
前まで,コードはVSCodeで書いて,Windows Terminal上でDocker起動させて動かしていたが,これでVSCode上ですべてが完結できるということで,非常に便利になった.VSCodeのGUIを用いてクリックでの作業ができるだけでなく,今までのようにVSCode上でのターミナルを用いてターミナル操作もできるということで環境が一層よくなったと思う.最後では,ちゃんとRvizを起動できることも確認でき,ここからの開発がよりスムーズになってくれると思っている.
Author And Source
この問題について(Docker: VSCode上で完結), 我々は、より多くの情報をここで見つけました https://qiita.com/Yuya-Shimizu/items/22c6a2a473139d15857f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .