開発環境として、Visual Studio Codeでdevcontainerのセットアップ方法についてまとめてみました。
構成
- Windows 10 (Visual Studio Code)
- Ubuntu 20.04 (接続先)
Dockerのインストール (Ubuntu 20.04側)
まずは、前回の記事のVisual Studio CodeのRemote Developmentの設定を行っておきます。
devcontainerを利用するために、Dockerをインストールしておきます。
dockerコマンドをsudoなしで実行できるように設定を行っておきます。
$ sudo apt install docker docker-compose $ sudo groupadd docker $ sudo gpasswd -a $USER docker $ sudo systemctl restart docker
作業用のディレクトリの用意 (Ubuntu 20.04側)
Ubuntu 20.04側で作業用ディレクトリを用意します。
$ mkdir <project directory> $ cd <project directory>
devcontainerの設定方法について、MSがサンプルコードを公開しています。
上記を参考に、devcontainerに必要なディレクトリとファイルを用意していきます。
$ mkdir .devcontainer $ cd .devcontainer $ vi devcontainer.json $ vi Dockerfile $ cd .. $ vi requirements.txt $ tree -a ├── .devcontainer │ ├── devcontainer.json │ └── Dockerfile ├── app.py └── requirements.txt
devcontainer.jsonの中で、Dockerfile、pythonのlint設定、Visual Studio Codeの拡張機能のpylance、requirements.txtの指定などを行っています。開発環境の構成を統一して管理できるというメリットがあります。
devcontainerの接続
Visual Studio CodeのRemote DevelopmentでUbuntu 20.04へ接続を行います。
右下のグリーンのボタンをクリックすると、メニューが表示されるため、 Reopen in Container
をクリックします。
コンテナのビルドが実行し、開発環境が用意されます。
ターミナルの画面に以下のように表示され、コンテナ内で操作ができるようになります。
vscode ➜ /workspaces/vscode-container $
起動したコンテナは、コンテナホスト側のディレクトリがマウントされており、コンテナ内で作成したファイルはコンテナホスト側に保存されます。
設定は以上となります。