Если продолжить тему линтеров. Есть еще один в использовании. Это Dockerfile Linter.
Есть веб версия: https://hadolint.github.io/hadolint
Если запускаю локально через shell:
docker run --rm -i hadolint/hadolint < Dockerfile
Так же встраиваю в пайплайн Jenkins:
stage ("Lint dockerfile") {
steps {
sh label: '', script: 'docker run --rm -i hadolint/hadolint < nginx/Dockerfile | tee -a hadolint_lint.txt'
}
post {
always {
archiveArtifacts 'hadolint_lint.txt'
}}
и получаю как артифакт сборки файл с уведомлениями. А если убрать tee -a hadolint_lint.txt, то можно и получать ошибку сборки если есть уведомления.
Есть линтер и для Vscode.
Исходный код на github:
https://github.com/hadolint/hadolint