はじめに
最近、個人でAIエージェントにコーディングしてもらうようになってきた。
けど、ビビりなせいか、AIエージェントが勝手に行動しないか不安になる今日この頃。
けど、AIエージェントにお願いするとほんと便利。
なので、ガードレールを作れないかと。Geminiに相談。
ホスト側を操作できないようにしたDockerコンテナ上で動かすようにしたらどうか?という提案を受けて、それだ!
で、開発環境をDockerコンテナに移してみた話。(まだ全然使っていないので、使っていたらやめるかもしれませんが)
手順
権限を絞ったDockerコンテナを作る。
ビルド時に開発環境として必要なものをインストール。
VSCodeで接続をする
WSL2への接続方法は知っていたけど、Dockerコンテナを知らなかったので聞いてみら、「Dev Containers」を知る。
Ctrl + P で、「Dev Containers:Attach to Running Container」でコンテナに接続。
あとはディレクトリを開くだけ。
ソースをチェックアウトする
VSCodeでも、Dockerターミナルでも、何でも良いので接続する。
で、ソースをクローンする。
git clone https://github.com/tarosuke777/spring-boot-hms
その後、VSCodeで開く。
ハマったこと
パッケージが足りないけどインストールができない。
動かしてみたら、パッケージが足りない!と思って追加しようとしても、制限に引っ掛かってインストール不可。
なので、Dockerfileに追記して再ビルドが必要。
ホスト側のVSCodeの設定影響で、Gradleエラー
で、「Extension Pack for Java Auto Config」を入れていたのですが、そのせいかJAVA_HOME関連が自動設定されるらしく、それがコンテナ側にも影響してエラーになってしまう。
「Extension Pack for Java」だけにしたら、うまくいった。
振り返り
当面、この環境でAIエージェントを使って開発を進めてみる予定。