CoderでリモートDev Containerをつくる
devcontainer.jsonを持つGitリポジトリのURL、保存先のDocker Volume等を渡してenvbuilderコンテナを作成すると、それ自身がDev Containerになる。
envbuilderコンテナ自身がDev Containerになる仕組み上、複数のコンテナから成るDocker Compose-basedなDev Containerを作成することは難しそう。
自前のDev ContainerビルダーでWorkspaceを作成させる作戦
Dev Container CLI(Dev Containerのビルド・起動等のリファレンス実装で、VSCodeでも使用されている)を通してDev Containerをビルド・起動・終了するコンテナをリソースとして用意する。 今後やりたいこと
ドキュメントを書く。
バインドマウントを禁止する。
Docker outside of Dockerの場合、バインドマウントのソースディレクトリはDocker CLIを実行している環境のものではなく、Dockerデーモンを実行しているホストマシンのものになる。1人で使う分には問題ないが、複数人で使う場合にホストマシンのディレクトリが見えてしまうのはセキュリティ上よくない。
プライベートリポジトリもクローンできるようにする。
2025/4/9更新: Coderが公式Terraform Providerにcoder_devcontainerというResourceを公開してくれたので、coder-template-devcontainer-by-cliを書き換える予定。mgn901.icon 該当PullRequest
ドキュメント