執筆: S.K
Hadolintとは
Hadolint(https://github.com/hadolint/hadolint)は、Dockerfileの品質を向上させるためのリンターツールです。
セキュリティやベストプラクティスの観点から、Dockerfileの問題を検出し、改善点を提案してくれます。
VS Code拡張機能について
VS Code用のHadolint拡張機能(https://github.com/michaellzc/vscode-hadolint)を使用することで、
エディタ内でリアルタイムにDockerfileの検証ができます。
通常はこの拡張機能はシステムにhadolintをインストールして使います。
システムにhadolintをインストールせずに使う方法
システムにhadolintを直接インストールしたくない場合、Dockerコンテナを使用したラッパースクリプトが便利です。
公式で推奨されている方法を詳しく解説します。
スクリプトを作成
まず、以下の内容でスクリプトファイルを作成します。
実行権限の付与
作成したファイルにhadolint_scriptと名前をつけて保存し、実行権限を付与します。
スクリプトをPATHに追加
ここでは以下のようにシステムのPATHが通っている場所に配置します。
VS Code拡張機能のインストール
VS CodeのExtensions マーケットプレイスから「hadolint」を検索し、
michaellzc.vscode-hadolint拡張機能をインストールします。
拡張機能の設定
VS Codeの設定で以下を構成します。
動作確認
動作確認のため以下のようなベストプラクティスに反するDockerfileを書いてみましょう。
DL3007 ( Using latest is prone to errors if the image will ever update. Pin the version explicitly to a release tag ) などの警告が表示されるはずです。
まとめ
AIがコードを生成する機会が増える中、Hadolintのようなツールは品質保証の観点で重要性を増していると思います。
AIが生成したDockerfileも人間が書いたものと同様に検証が必要であり、
一貫した基準でのチェックによってセキュリティリスクの軽減や品質向上が期待できます。