Terraform Dockerプロバイダー:image属性の変更をエレガントに処理する
2025-03-27
TerraformでDockerコンテナを管理する場合、Dockerプロバイダーは`image`属性をSHAダイジェストに変換します。これにより、後続のTerraform refreshで画像の変更が誤って検出され、コンテナの再作成が強制されます。`lifecycle { ignore_changes = [image] }`を単純に使用すると、実際の画像の変更が隠蔽され、潜在的なリスクが生じます。この記事では、`null_resource`をトリガーとして利用する解決策を示します。`image`属性が変更されると、`null_resource`が再構築され、間接的にコンテナの再構築がトリガーされます。これにより、画像の更新を保証しながら、不要なコンテナの再作成を回避します。
開発