Slide 1

Slide 1 text

@akeno_0810 2022.05.21 VSCode Remote Containers のすすめ つながる勉強会 #15

Slide 2

Slide 2 text

自己紹介 About me akeno (@akeno_0810) Webエンジニア歴2年くらい Rust, API/コード設計, DevOps/開発の効率化 触っている技術 最近興味のある分野

Slide 3

Slide 3 text

VSCode Remote Containersとは?

Slide 4

Slide 4 text

VSCode Remote Containers 引用元:https://code.visualstudio.com/docs/remote/containers VSCodeを用いてコンテナ上で開発する仕組みのこと。 ローカルで開発する際と同じようにコンテナ上で開発が出来る。 正式名称はよくわからない。

Slide 5

Slide 5 text

VSCode Remote Containers 事前にローカル環境に必要なもの d Visual Studio Cod„ d ここが一番難しそa d Docker Desktor d Dockerコンテナ上での開発となるたp d Docker準拠のものやWSL上のDockerも使える(らしい‰ d https://code.visualstudio.com/remote/advancedcontainers/docker-optionb d Remote - Containers 拡張機0 d https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote- これだけでどんな環境でもコンテナ内で開発できる!(誇大広告) ネイティブアプリや組み込み・ゲーム等はそれぞれの開発環境があるので… とはいえWeb開発が絡んできたら使える場面はあるかもしれない

Slide 6

Slide 6 text

VSCode Remote Containers 設定ファイル ソース w .devcontainer/devcontainer.jsoe w Remote Containersを立ち上げる為の設定を記H w Dockerfileやdocker-compose.ymR w 立ち上げるコンテナの設定を記H w Remote Container用の特別なルール等はない

Slide 7

Slide 7 text

なぜ使って欲しいのか?

Slide 8

Slide 8 text

VSCode Remote Containersの良い点 導入と共有の楽さ 開発環境のコード化・統一 s 設定ファイルをGit等で共有するだU s 開発に入りやすt s 拡張機能やCLIツールを手軽に共有できV s 開発ノウハウの共有 s 環境依存の減少による品質向e s 壊れた際に気軽に潰せV s 本番環境との差異が減らせV s コミュニケーションコストが下がる

Slide 9

Slide 9 text

DEMO

Slide 10

Slide 10 text

おすすめし辛い点

Slide 11

Slide 11 text

VSCode Remote Containersの微妙な点 Docker Desktop有料化 ファイル同期が遅い M1 Mac問題 個人や小規模開発なら問題ないのだが、手放しに勧められなくなった。 ホスト⇄コンテナ間のファイル同期が遅くて困る。
 WSLとかVirtioFSとかDocker Desktop以外を使うとか回避法はあるが現状手間はかかる。 書き込みの多いディレクトリは同期しないという手を使うことが多い。 arm64向けコンテナイメージがない場合がある。 エミュレートするかイメージを変更する必要が出てくる。

Slide 12

Slide 12 text

まとめ

Slide 13

Slide 13 text

VSCode Remote Containers のすすめ b コンテナ内で開発するための仕組E b VSCode+Dockerで手軽に実# b 開発環境のコード化と統& b Docker依存はある 環境構築・開発環境のことで悩まない日々を始めましょう!

Slide 14

Slide 14 text

Thank you! 公式ドキュメント https://code.visualstudio.com/docs/remote/containers https://code.visualstudio.com/docs/remote/devcontainerjson-reference Remote Containers コードサンプル https://github.com/orgs/microsoft/repositories?q=vscode-remote&type=all &language=&sort= Docker Image https://hub.docker.com/_/microsoft-vscode-devcontainers 参考資料