Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cremindes/whalelint
Dockerfile linter written in Go. It provides static analysis for Dockerfiles, identifying common mistakes and promotes best practices.
https://github.com/cremindes/whalelint
container docker docker-container docker-image dockerfile dockerfile-linter dockerhub jetbrains-plugin linter vscode-extension
Last synced: about 1 month ago
JSON representation
Dockerfile linter written in Go. It provides static analysis for Dockerfiles, identifying common mistakes and promotes best practices.
- Host: GitHub
- URL: https://github.com/cremindes/whalelint
- Owner: CreMindES
- License: mit
- Created: 2020-12-16T13:13:03.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2023-11-14T18:24:57.000Z (about 1 year ago)
- Last Synced: 2024-09-27T01:52:22.271Z (about 2 months ago)
- Topics: container, docker, docker-container, docker-image, dockerfile, dockerfile-linter, dockerhub, jetbrains-plugin, linter, vscode-extension
- Language: Go
- Homepage:
- Size: 1010 KB
- Stars: 13
- Watchers: 1
- Forks: 2
- Open Issues: 29
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WhaleLint
[![made-with-Go](https://img.shields.io/badge/Made%20with-Go-1f425f.svg)](http://golang.org)
> *Disclaimer: this has started out as a pet-project while learning Golang.*
Dockerfile linter written in Go.
It provides static analysis for Dockerfiles, identifying common mistakes and promotes best practices.
## Sample output
## Rules
Each Dockerfile AST element has a corresponding set of rules. Click on the picture for details.
## Development
### Roadmap
| Feature | | Status |
|---|---|---|
| Extendable ruleset| | ![Done](https://img.shields.io/static/v1?label=&message=Done&color=Green) |
| CLI | |![Done](https://img.shields.io/static/v1?label=&message=Done&color=Green) | |
| Configurable Output | | ![Done](https://img.shields.io/static/v1?label=&message=Done&color=Green)
| - JSON | ![Done](https://img.shields.io/static/v1?label=&message=Done&color=Green) |
| - Colored Summary | ![Done](https://img.shields.io/static/v1?label=&message=Done&color=Green) |
| Docker image | | ![Done](https://img.shields.io/static/v1?label=&message=Done&color=Green) |
| Rule pass | | ![NotYetStarted](https://img.shields.io/static/v1?label=&message=NoYetStarted&color=lightgrey) |
| - Per line | ![NotYetStarted](https://img.shields.io/static/v1?label=&message=NoYetStarted&color=lightgrey) |
| - Config file | ![NotYetStarted](https://img.shields.io/static/v1?label=&message=NoYetStarted&color=lightgrey) |
| Config file | | ![NotYetStarted](https://img.shields.io/static/v1?label=&message=NoYetStarted&color=lightgrey) |
| - Rule profiles | ![NotYetStarted](https://img.shields.io/static/v1?label=&message=NoYetStarted&color=lightgrey) |
| IDE plugins/extensions | | ![InProgress](https://img.shields.io/static/v1?label=&message=InProgress&color=blue)
| - VSCode | ![PreviewRelease](https://img.shields.io/static/v1?label=&message=PreviewRelease&color=blue)
| - JetBrains | ![PreviewRelease](https://img.shields.io/static/v1?label=&message=PreviewRelease&color=blue)### Design Decisions
A collection of documents describing the thought process behind selected design decisions. [Link >](docs/design/readme.md)
### Contribution Guide
[Link > TODO](docs/contribution/readme.md)
## Docker Image
![Docker imaage version](https://img.shields.io/docker/v/cremindes/whalelint)
![DockerHub Downloads](https://img.shields.io/docker/pulls/cremindes/whalelint)
![Docker image size](https://img.shields.io/docker/image-size/cremindes/whalelint)```bash
docker pull cremindes/whalelint:[tag]
docker run --rm -v $(pwd)/Dockerfile:/Dockerfile cremindes/whalelint:[tag] Dockerfile
```## Plugins
### JetBrains
![Version](https://img.shields.io/jetbrains/plugin/v/tamas_g_barna.whalelint)
![Downloads](https://img.shields.io/jetbrains/plugin/d/tamas_g_barna.whalelint)
*Note: make sure, to also install the [Docker plugin](https://plugins.jetbrains.com/plugin/7724-docker) in case it's not bundled with the IDE.
### VSCode
[![Version](https://vsmarketplacebadge.apphb.com/version/tamasgbarna.whalelint.svg)](https://marketplace.visualstudio.com/items?itemName=tamasgbarna.whalelint)
[![Installs](https://vsmarketplacebadge.apphb.com/installs-short/tamasgbarna.whalelint.svg)](https://marketplace.visualstudio.com/items?itemName=tamasgbarna.whalelint)
## Alternatives
[Alternatives](docs/alternatives/readme.md)