Dockerコンテナ環境の管理の仕方について

テーマ、知りたいこと

Docker環境の管理方法について、一般的あるいは良い方法があればご意見いただきたいです。

背景、状況

自分は駆け出しのプログラマで、最近複数の言語を扱うようになり、ローカルでもなるべくコンテナ環境を使って開発を行おうとしています。

dockerfileを用いて、最低限自身の必要な環境を構築することはできたのですが、直近使用していたプロジェクト以下にあるdockerfileを、新しいプロジェクトを作る時に毎回コピーして使っており、不便さを感じております。

もう少し具体的な例で説明すると、まだ環境構築も発展途上なので、dockerfileにいろんなコードを追加したり削除したり、vscodeの拡張機能などを追加したくなったりするのですが、それが他のプロジェクトでは反映されていなかったり、どれがどれか分からなくなってきて混乱してしまっています。

理想は、常にJavaならJavaの環境を記述したdockerfileの最新版が保存されている場所が合って、Javaのプロジェクトを作った時にそこからdockerfileをDLなのかcloneなのかして、マイナーチェンジをその環境で行うみたいなことがいいのかなと考えています。

解決策

自身で調べたところ、dockerfileをGitHubでバージョン管理をする的な記事は散見されるのですが、それはdockerfile単体でレポジトリを作るという意味なのでしょうか?
dockerfileも含めてプロジェクト単位でGitHubで管理していると、新しいプロジェクトでそのdockerfileだけコピーしてくる流れになってしまいそうでいまいち腑に落ちていません。

また、DockerHubを使う案も考えたのですが、毎回イメージをpushしたりビルドしたりスマートでないなぁという印象を持っていて、もっと良い案があればご教授いただきたいです。よろしくお願いいたします。

コメントを投稿

0 コメント