システムエンジニアあるあるですが、プロジェクト参画直後に「資料やREADME見て環境構築しといて」と放置プレイされたことありませんか?
最近はDockerやらDockerやらDockerを使っていて、VM世代のおじさんにはさっぱり。
多少勉強はしていたけど、いざ業務レベルとなるとちんぷんかんぷん。
そもそもここ数年は設計ばかりでプログラミング環境は遠のいていたけど、最近はDocker当たり前なんですね~。
そんな状態で、AI(Claude Code)を使って環境構築して、1ヶ月でDockerを習得したお話です。
Claude Codeの有料プラン(Pro、Max等)を使用しています。Freeプランだとチャットだけなので、ここまでのことはできないようです。
まずは現状整理
そして、いざREADMEを見てみると・・
- 情報が古い(手順書に書いている通りに進まない)
- 前提条件が書いてない(ある程度インフラ知識がある前提で書かれてる)
- 自分の環境はWindows(手順書には一応Windows,Mac書いてあるが..)
- Windowsはvagrant(仮想環境を使用)にDockerいれるみたい
- バックエンドはPHP(Laravel)、フロントはReactという状態
とりあえず自分で進めてみましたが、エラーやらでググってもさっぱりでお手上げでしたね。
かといって、環境構築って時間がかかるので、忙しいオーラ全開の他メンバーも頼れず。
Claude Codeで全部解決した!
結論から言うと、Claude Codeが環境構築してくれました。
REDMEやらvagrant、Dockerの設定ファイルが入ったプロジェクトソースを渡して「このプロジェクトの開発環境を構築してください」と指示をだしただけで、自分であれこれ解読して、エラーが出れば自分で解析して他の手段で実行、というのをやってくれて、いろいろ「このコマンドは実行していいですか?」みたいのにOKするだけで、1日で出来上がりました。
vagrant環境
Mac前提なのかメモリが2GBしか定義されておらず、ビルドで失敗したときにメモリーが足りないようなので『4GBに設定を変えていいですか?』と聞いてきました。
もちろんOKです!
あとはフォルダのアクセス権などもいちいち聞いてきたのでYesを連打!
Docker環境
vagrantが立ち上がったあとは、各Dockerコンテナの生成を自動で始めてくれました。
- docker-compose.ymlを探して、必要な設定を確認
- docker-compose upで起動
- エラーが出たら原因を特定して修正
- 環境変数ファイルを自動生成
- docker-compose upで起動
- エラーが出たら原因を特定して修正
エラー時はログ解析も自分で行ってくれたり、デベロッパーツールのコンソール内容が必要なときはその都度教えてくれるので、非常に楽でした。
なにより、エラーの原因をきちんと伝えてくれるのはこちらも勉強になります。
いざ実行
『このパスで動くよー』というのも教えてくれるので、そのパスにアクセスするも、アクセスエラー。「このパスにアクセスできません」と伝えると、また解析し始めて、再度チャレンジのメッセージが表示されました。
んで、再度チャレンジするも、次は画面が真っ白。「アクセスすると画面が真っ白です」と伝えると、また解析し始めて完了したようなので、再度アクセスすると無事にログイン画面が表示されました!
こんな感じで数回のやりとりであっというまに環境が作れちゃいました。
データベース
現場の人にログインIDとパスワードを聞くと『PHPのシーダーでデータベースのデータ作って、このIDとパスワードで』と言われたので、そのままAIに伝えると、無事にログインできるようになりました。
いやー、感動でした!!
おまけ
いちいち許可を求められても基本的にOKなので、「いちいちコマンドを実行していいか聞かずにYesでいいです」と伝えると、その設定もしてくれて、次から聞いてこなくなりました。
ただ、セキュリティの観点からか、上記の設定をしても、ファイルの作成やそれ以外でも聞いてくるので、「〇〇の場合は聞いてこなくていいです」と明確にいう必要があるようです。
.claudeフォルダのsettings.jsonに自分で設定する方法はあるようです。ただ、自分では思うように設定できなかったので、それすらもClaude Codeでやってもらいました。
Claude Codeの特徴
- 日本語の対話形式で指示ができる
- VS Code上で開いているプロジェクトに対して対応(環境構築しかりPG修正しかり)
- 複数ファイルを同時に編集できる
- ファイルの読み書きを自動でやってくれる
- エラーログを見て原因を特定してくれる
- エラーの原因と対応方法を教えてClaude Codeが実行する
つまり、「〇〇して」でそのままClaude Codeに丸投げできるわけです。
料金
Proプランだと月額20ドル(約3,000円)で使えます。
私はがっつり使ってますので、Maxプランの月額100ドル(約15,000円)を使用しています。
違いは利用制限の違いだけのようですが、Proプランだとあっという間に使い切るようです。
Claude Codeのメリット
プロジェクト全体を解析
プロジェクト全体を解析してくれるので、バックエンド・フロントエンド両方ともの修正をしてくれます。また、修正後は自分でビルドしてエラーが出れば分析してとトライアンドエラーを自動でやってくれるので、こちらは出来上がったものをレビューするだけで済みます。
また、対応方法はネットで検索してくれるので、最新情報で対応してくれるのもいい点です。
学習にもなる
先程も記載しましたが、原因と対応方法を教えてくれるので、勉強にもなります。
また、どういう構成なのか、役割なのかを質問すると回答してくれるので勉強にもなります。
Claude Codeの解説や、VMで慣れた人用のDocker勉強の記事もそのうち作る予定です。
日本語の理解度は高い
指示を出すときの日本語入力が悪いため、よく誤字や脱字のまま指示を出しますが、きちんと理解してやってくれています。
「英語で指示を出す方が精度が高い」とか言われていますが、日本語でもまったく問題ありません。
Claude Codeのデメリット
完璧ではない
100%正確ではないです。
メリットでもあるのですが、Claude Codeが勝手によかれと思って、指示したこと以外のこともやります。
変更内容はきちんと確認しないと変な実装をしていることもよくあります。
とはいえ、人間のエンジニアも間違えるので、処理は早いし、指示も明確でなくても通じるのですごく便利という印象です。
月額料金がかかる
最低でも月額20ドル(約3,000円)かかります。
わたしの場合はフリーランスのため、経費計上できるので、時短効果を考えると十分元が取れると判断して契約しています。
プロジェクトによっては使えない
セキュリティポリシーが厳しいプロジェクトでは使えないことがあります。
学習させない機能がついているので、最近はそれで許可が取れることが多いですが、ダメなところはダメですね。
必ずAIの使用可否を確認するようにしましょう。下手するとセキュリティ違反で大事故になります。
依存しすぎると危険
Claude Codeに頼りすぎると、自分で考える力が衰えるリスクがあります。
あくまで補助ツールとして使うのがおすすめです。
実際、わたしもClaude Codeが作成した内容を理解してから提出するようにしています。
実際の成果と感想
ストレスレベル
従来:かなり高い(エラーが出る度に不安や焦り)
Claude Code使用後:ほぼゼロ(エラーが出てもClaude Codeが解決してくれる)
精神的な負担が激減しました。
個人的な満足度
大満足です。
正直、もうClaude Code無しの構築には戻れないと思います。
現在はプログラミングにおいてもClaude Codeを使用していますが、すごく便利です。
試しにGithubCopilotに同じ指示をしましたが、Claude Codeの方が親切にいろいろやってくれる気がします。そのうち比較もやってみたいと思います。
vagrantからWSLに乗り換え
vagrantの起動に時間がかかるので、Claude Codeに指示を仰ぎながらWSLに乗り越えました。
思った以上に苦労しましたが、Claude Codeに助けてもらいながら無事に乗り換え完了しました。起動時間が圧倒的に早くなりました。(vagrant使用時はコンテナをきちんと理解していなかったせいもあるかもですが)
あとは自分で考えて環境構築することでDockerの知識を深めることができましたね。
こんな人におすすめ
フリーランス
開発者全員におすすめしたいところですが、お高い(Maxプラン前提)なので、元をとれるフリーランスの方は超絶おすすめです。
Claude Codeが解析やらなにやらやっている時間は暇なので、別の作業をすることは十分可能です。
環境構築が苦手な人
環境構築が苦手という人にもおすすめです。
Claude Codeに任せれば、環境構築の知識がなくても大丈夫です。
まとめ
わたしのように、どうしたらいいのか分からないストレスから解放されたいという人にはぴったりです。
正直、AIはChatGPTを使うぐらいで、業務で使うのは初めてでしたが、環境構築からプログラミングまでやってくれるので、やったことがない言語や環境でも対応することができています。
ただし、レビューは必ず必要なのである程度の知識と知識習得は必須です。
コメント