Last Updated on 2024-02-20 by Clay
什麼是 Hadolint?
Hadolint 是一個 Dockerfile linter,它可以幫助你在撰寫 Dockerfile 時遵循最佳做法和風格指南。
它是基於 Haskell Dockerfile Linter,結合了 ShellCheck 的功能,可以讓你在撰寫 Dockerfile 的時候,保持代碼的整潔和高質量。
簡單來說,我們之所以要要使用 Hadolint,是因為當我們(開發者)在建立 Dockerfile 時,我們可能寫法並不是最佳實作的模式,所以就可以使用 Hadolint 來幫助我們:
- 遵守 Docker 的最佳作法
- 避免常見的錯誤和安全性問題
安裝方式
- Docker
docker pull hadolint/hadolint
- Linux
sudo wget -O /usr/local/bin/hadolint https://github.com/hadolint/hadolint/releases/download/v2.6.1/hadolint-Linux-x86_64 &&\
sudo chmod +x /usr/local/bin/hadolint
以上的版本號 v2.6.1 是一個範例,你當然可以使用最新的版本。
如何使用 Hadolint?
我們在終端機中,可以將 Dockerfile 的路徑直接傳遞給 hadolint。
hadolint path_to_your_Dockerfile
我們就可以看到 hadolint 對於我們 Dockerfile 的修改建議。
References
- Dockerfile linter, validate inline bash, written in Haskell
- hadolint/hadolint - Docker Image | Docker Hub