はじめに
GithubCodespacesという機能?をはじめてりようしました。
そこでの疑問と初心者向けにDockerの関係をまとめてみたいと思います。
わたしの疑問
- 「GitHub Codespaces は Dockerコンテナ上で動作する開発環境」というものをなにかでめにした。
- 「GitHub Codespaces」はクラウド上でうごくVscodeのようなエディタという認識であっている?
- 「Dockerコンテナ上で動作する開発環境」らしいが、私のPCにインストールされているDockerDesktopを起動していないのに動く??どういうこと
GitHub Codespaces と Docker の関係について
結論
✅ 「GitHub Codespaces」はクラウド上で動作する VSCode のようなエディタ
✅ Docker Desktop を起動していなくても、Codespaces は Docker コンテナ上で動作する
✅ Docker は「GitHub のクラウド環境」で動いているため、私のPCのDocker Desktop とは無関係
💡 GitHub Codespaces の仕組み
GitHub Codespaces を使うと、クラウド上に**「開発専用の仮想マシン(VM)」**が作られる
この VM の中で Docker コンテナ が動いていて、そこに Ruby や Rails などをインストール。
🛠 簡単に言うと…
- 私のPCには何もインストールせずに、クラウド上の仮想環境で開発できる
- Docker コンテナは GitHub のクラウド内にあるので、私のPCの Docker Desktop とは関係ない
- PCのブラウザ上で VSCode っぽいエディタを開いているだけ
💡 なぜ Docker Desktop を起動していないのに動くの?
Docker は **クラウド上の GitHub サーバーで動いているからです!
💡 わかりやすい図
以下のようなイメージです👇
🚀 GitHub Codespaces の仕組み
───────────────────────────────────
| あなたの PC (ブラウザで操作) |
| ┌──────────────────────────┐ |
| | Codespaces の VSCode風エディタ | |
| └──────────────────────────┘ |
───────────────────────────────────
⬇ インターネット経由で接続
───────────────────────────────────
| GitHub クラウド (データセンター) |
| ┌──────────────────────────┐ |
| | 仮想マシン (VM) | |
| | ┌──────────────────┐ | |
| | | Docker コンテナ | | |
| | └──────────────────┘ | |
| └──────────────────────────┘ |
───────────────────────────────────
💡 まとめ
✅ GitHub Codespaces は、クラウド上にある Docker コンテナを使って開発する環境
✅ 私の PC には Docker は不要(Docker Desktop を起動しなくてもOK)
✅ ブラウザで VSCode みたいに編集できるが、実際のプログラムは GitHub のクラウドで動いている
GithubCodespacesについてすこしでも理解が深まれば幸いです