Terraform は HCL で望ましい状態を記述し、依存関係を構築して実リソースを追跡します。この実践コースでは、有料クラウドを使わず、ローカル Docker とファイルでそのライフサイクルを学びます。
Provider を初期化し、plan を読み、変更を apply し、コンテナを変数化して output を確認します。Terraform 外でコンテナを削除して drift と再調整を観察し、local_file を再利用可能な module にまとめます。
学習内容
- Terraform を導入し、provider を固定して作業ディレクトリを初期化する
- Docker image と container を定義しリソース間参照を行う
- 変更適用前に plan を読む
- 設定を apply し Nginx と port mapping を確認する
- 型付き変数を宣言・上書きし output を公開する
- ローカル state を確認し手動編集すべきでない理由を説明する
- drift を作成・検出し欠けたリソースを再調整する
- 入力を持つローカル module を作成、呼び出し、再利用する
このコースの対象者
この中級コースは、Terraform の設定、plan、state、module を実践したい Linux ユーザー、管理者、DevOps 学習者向けです。
前提知識: Linux シェル、sudo、編集、Docker image/container、port、構造化設定。Cloud アカウントや HCL 経験は不要です。
学習環境: Terraform、Docker、provider download、local state を備えた Linux ターミナルです。全リソースは Docker と local_file でローカルに作成します。
よくある質問
AWS、Azure、Google Cloud にリソースを作りますか?
いいえ。ローカル Nginx container とテキストファイルだけで、cloud credential、network、VM、課金はありません。
Remote backend や team locking を扱いますか?
いいえ。terraform.tfstate を調べ、container を削除し、plan で drift を検出して apply で復元します。Remote state、import、機密 state 保護は範囲外です。
「webserver」module は実際の server を作りますか?
いいえ。server_name と env からローカル設定ファイルを作ります。チャレンジも challenge_result.txt を書き、module 構造に集中します。





