# Dockerfile Best Practice Linters

> Search results for `lint Dockerfiles for best practices and mistakes` on awesome-repositories.com. 112 total matches; showing the first 50.

Explore on the web: https://awesome-repositories.com/q/lint-dockerfiles-for-best-practices-and-mistakes

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [this search on awesome-repositories.com](https://awesome-repositories.com/q/lint-dockerfiles-for-best-practices-and-mistakes).**

## Results

- [goldbergyoni/javascript-testing-best-practices](https://awesome-repositories.com/repository/goldbergyoni-javascript-testing-best-practices.md) (24,589 ⭐) — This project is a comprehensive knowledge base and educational resource for JavaScript developers, focused on establishing industry-standard methodologies for automated software testing. It provides a structured collection of design patterns and actionable guidelines designed to improve code reliability, maintainability, and overall software quality across the development lifecycle.

The repository distinguishes itself by offering a granular, pattern-based approach to testing that spans unit, integration, and end-to-end verification. It emphasizes specific architectural strategies such as comp
- [dbt-labs/dbt-core](https://awesome-repositories.com/repository/dbt-labs-dbt-core.md) (13,051 ⭐) — dbt-core is a command-line framework for transforming data within a warehouse using modular SQL and version control. It functions as a data transformation engine that enables users to define data structures and business logic through declarative configuration files, which the system then compiles into executable code. By managing complex data dependencies through a directed acyclic graph, it ensures that transformation tasks execute in the correct order while maintaining a manifest-driven state to track lineage and execution history.

The project distinguishes itself through an adapter-based d
- [cpp-best-practices/cppbestpractices](https://awesome-repositories.com/repository/cpp-best-practices-cppbestpractices.md) (8,766 ⭐) — This project is a curated collection of guidelines and technical resources designed to improve C++ code safety, maintainability, and performance. It provides a comprehensive set of coding standards and best practices for establishing consistent naming, formatting, and structural patterns across C++ codebases.

The guide offers specific technical advice on performance optimization, including methods for minimizing object copying, optimizing memory allocation, and reducing compilation cycles. It also provides a directory of tooling recommendations for implementing static analysis, fuzz testing,
- [futurice/android-best-practices](https://awesome-repositories.com/repository/futurice-android-best-practices.md) (20,754 ⭐) — This project provides a comprehensive set of architectural patterns, build configurations, and quality standards for developing maintainable and scalable Android applications. It serves as a guide for organizing mobile application code into feature-based modules to improve encapsulation and simplify navigation, while establishing a framework for standardizing build processes and dependency management across development environments.

The repository distinguishes itself by offering strategies for integrating automated quality assurance, including unit testing, static code analysis, and performa
- [continuedev/continue](https://awesome-repositories.com/repository/continuedev-continue.md) (33,716 ⭐) — Continue is an automated code review platform that integrates AI agents directly into the software development lifecycle. By executing custom validation rules against pull request diffs, it provides immediate feedback through repository status checks, allowing teams to enforce quality, security, and documentation standards before manual review begins.

The system distinguishes itself through a file-based configuration model where validation logic is defined in version-controlled markdown files. These files act as system prompts that guide autonomous agents in evaluating code changes. This appr
- [analysis-tools-dev/static-analysis](https://awesome-repositories.com/repository/analysis-tools-dev-static-analysis.md) (14,389 ⭐) — This project is a comprehensive, curated directory of static analysis, linting, and security scanning utilities. It serves as a central resource for developers to discover, compare, and select tools based on specific programming languages, licensing models, and integration requirements.

The directory distinguishes itself by providing deep metadata for each listed utility, including community-driven popularity rankings, maintenance status, and deployment methods. By aggregating these tools into a single searchable index, it enables teams to identify solutions for enforcing coding standards, ma
- [bodadotsh/npm-security-best-practices](https://awesome-repositories.com/repository/bodadotsh-npm-security-best-practices.md) (761 ⭐) — This project provides a comprehensive guide for securing the software supply chain within Node.js and npm environments. It focuses on hardening the entire lifecycle of third-party dependencies and package publishing processes to protect applications from malicious code injection and unauthorized registry modifications.

The guide distinguishes itself by emphasizing identity-based authentication and cryptographic provenance to verify the origin of distributed artifacts. It advocates for strict governance policies, such as enforcing minimum release ages for dependencies and disabling automatic l
- [goldbergyoni/nodebestpractices](https://awesome-repositories.com/repository/goldbergyoni-nodebestpractices.md) (105,356 ⭐) — This project provides a comprehensive collection of industry-standard guidelines for developing, testing, and deploying Node.js applications. It covers the entire software lifecycle, offering actionable advice on code style, architectural patterns, and security measures to ensure maintainability and consistency across large-scale codebases.

The documentation details strategies for robust error management, containerization, and production readiness. It addresses operational requirements such as observability, scalability, and infrastructure configuration, while providing specific methodologies
- [docker-slim/docker-slim](https://awesome-repositories.com/repository/docker-slim-docker-slim.md) (23,311 ⭐) — This project is a suite of specialized tools for linting, minifying, analyzing, and managing container images and their associated registries. It provides a set of utilities including an image minifier to reduce image size, a security profiler to harden running containers, an image analyzer for static inspection, and a registry manager for organizing multi-architecture indices.

The toolset distinguishes itself through behavior-based optimization and security. It uses dynamic analysis to track executed instructions and file access to remove unused binary data, and records kernel interactions t
- [mattdesl/module-best-practices](https://awesome-repositories.com/repository/mattdesl-module-best-practices.md) (1,545 ⭐) — :books: some best practices for JS modules
- [docker-library/official-images](https://awesome-repositories.com/repository/docker-library-official-images.md) (6,972 ⭐) — This project is a collection of curated and standardized Docker base images that serve as reliable starting points for building containerized applications. It functions as an OCI container image repository and a build template library, providing a central source of truth for images that adhere to Open Container Initiative standards for portability.

The project utilizes an automated image lifecycle pipeline to build, tag, and push images, ensuring that dependencies remain current and security patches are applied. It specifically supports cross-platform distribution by providing a multi-archite
- [in28minutes/java-best-practices](https://awesome-repositories.com/repository/in28minutes-java-best-practices.md) (1,443 ⭐) — Best practices in Coding, Designing and Architecting Java Applications
- [moonrepo/moon](https://awesome-repositories.com/repository/moonrepo-moon.md) (3,687 ⭐) — Moon is a monorepo build system and task runner designed to orchestrate complex projects with multiple packages. It functions as a dependency graph orchestrator that executes build targets in topological order and utilizes input hashing to cache results and skip redundant work.

The project features a polyglot toolchain manager that automates the installation and versioning of language runtimes and CLI tools to ensure environment consistency. It also includes a plugin framework based on WebAssembly, allowing developers to extend build logic and toolchain behavior using any supported language.
- [bazelbuild/bazel](https://awesome-repositories.com/repository/bazelbuild-bazel.md) (25,529 ⭐) — Bazel is a multi-language build automation engine designed to manage complex dependency graphs and execute compilation tasks for massive codebases. It functions as a hermetic build environment, utilizing sandboxed execution and content-addressable caching to ensure that build artifacts are reproducible and that identical tasks are never re-executed. By modeling dependencies as a directed acyclic graph, the system determines optimal execution order and identifies tasks that can run in parallel.

The project distinguishes itself through its support for distributed build execution, allowing resou
- [langchain-ai/deepagents](https://awesome-repositories.com/repository/langchain-ai-deepagents.md) (25,006 ⭐) — Deepagents is an LLM agent orchestration platform and stateful application server designed for deploying and managing AI agents built with computational graphs. It provides a containerized runtime environment that handles agent execution, state persistence, and the versioning of AI assistants.

The platform distinguishes itself through deep integration with the Model Context Protocol, allowing agents to function as servers that expose tools and capabilities to external clients. It features a sophisticated observability suite for capturing execution traces, performing LLM-based evaluations agai
- [jehna/readme-best-practices](https://awesome-repositories.com/repository/jehna-readme-best-practices.md) (940 ⭐) — Best practices for writing a README for your open source project
- [antonbabenko/terraform-best-practices](https://awesome-repositories.com/repository/antonbabenko-terraform-best-practices.md) (2,474 ⭐) — Terraform Best Practices free ebook translated into 🇬🇧🇦🇪🇧🇦🇧🇷🇫🇷🇬🇪🇩🇪🇬🇷🇮🇱🇮🇳🇮🇩🇮🇹🇯🇵🇰🇷🇵🇱🇷🇴🇨🇳🇪🇸🇹🇷🇺🇦🇵🇰
- [veggiemonk/awesome-docker](https://awesome-repositories.com/repository/veggiemonk-awesome-docker.md) (36,229 ⭐) — This project is a comprehensive, community-driven directory that serves as a centralized discovery hub for the container ecosystem. It functions as a structured knowledge base, aggregating a wide array of software tools, educational materials, and technical resources designed to assist developers and operators in mastering containerization technologies.

The repository distinguishes itself through a meticulously organized taxonomy that maps the entire container lifecycle, from initial development and image building to orchestration, security, and infrastructure operations. By curating disparat
- [flutter-team-archive/plugins](https://awesome-repositories.com/repository/flutter-team-archive-plugins.md) (17,710 ⭐) — This project is a collection of official plugin packages and a native integration library designed to provide a consistent interface for accessing hardware and software functionality across different mobile and desktop platforms. It serves as a native platform bridge, enabling cross-platform applications to invoke native code and manage operating system dependencies.

The project utilizes a federated plugin architecture, splitting plugins into common interfaces and separate platform implementations to allow for independent development and extension. It further supports native integration throu
- [alexandru/scala-best-practices](https://awesome-repositories.com/repository/alexandru-scala-best-practices.md) (4,352 ⭐) — A collection of best practices, friendly to people that want to contribute.
- [f/prompts.chat](https://awesome-repositories.com/repository/f-prompts-chat.md) (163,814 ⭐) — This platform serves as a centralized management system for organizing, refining, and versioning AI instructions and agent skills. It functions as a repository that enables users to store, categorize, and retrieve structured prompts, ensuring consistent performance across various artificial intelligence models. By integrating with the Model Context Protocol, the system allows external AI assistants and development environments to discover and access these instruction libraries directly.

The platform distinguishes itself through its focus on prompt engineering and automated refinement, utilizi
- [flightcontrolhq/superjson](https://awesome-repositories.com/repository/flightcontrolhq-superjson.md) (5,260 ⭐) — Superjson is a lossless JSON serialization library and data transcoder. It converts complex JavaScript and TypeScript data types into strings and metadata to ensure that type identity is preserved during data transfer.

The library preserves non-native types such as Dates, Maps, and Sets by splitting values into a JSON-compatible payload and a separate map of type-specific metadata. It utilizes a registry-based mapping system that allows for the definition of custom type handlers to manage third-party data types during serialization and deserialization.

This utility supports cross-process dat
- [lukasmartinelli/hadolint](https://awesome-repositories.com/repository/lukasmartinelli-hadolint.md) (12,225 ⭐) — Hadolint is a Dockerfile linter and Haskell-based static analysis tool. It analyzes container image configuration files against a set of rules to ensure valid syntax and adherence to best practices.

The tool functions as a wrapper for shell checkers to inspect inline shell commands and scripts within build instructions, identifying scripting errors and bugs. It also includes security auditing capabilities to warn when images are pulled from registries not explicitly listed as trusted.

The analysis engine covers quality assurance through label schema validation, syntax pattern verification, a
- [anthropics/claude-code](https://awesome-repositories.com/repository/anthropics-claude-code.md) (132,728 ⭐) — Anthropic's terminal-native AI coding agent.
- [pangeo-data/cog-best-practices](https://awesome-repositories.com/repository/pangeo-data-cog-best-practices.md) (94 ⭐) — Best practices with cloud-optimized-geotiffs (COGs)
- [rhysd/actionlint](https://awesome-repositories.com/repository/rhysd-actionlint.md) (3,617 ⭐) — actionlint is a static analysis tool and linter specifically designed for GitHub Actions workflow files. It functions as a CI workflow validator and YAML configuration linter to ensure the syntax and logic of automation files are correct before deployment.

The project distinguishes itself by performing deep security auditing and script analysis. It includes a shell script auditor to detect syntax bugs and script injection vulnerabilities in inline commands, and it scans for hardcoded credentials to prevent security leaks.

The tool covers a broad range of validation capabilities, including ex
- [elysiajs/elysia](https://awesome-repositories.com/repository/elysiajs-elysia.md) (18,531 ⭐) — Elysia is a high-performance TypeScript web framework designed for building type-safe backend services. It provides a modular, plugin-based architecture that allows developers to compose server logic, middleware, and validation schemas into scalable application instances. By leveraging native web standards, the framework ensures portability across diverse JavaScript runtimes, including Node.js, Deno, and various edge computing environments.

The framework distinguishes itself through its focus on end-to-end type safety, automatically synchronizing request and response definitions between the s
- [alanjames1987/node.js-best-practices](https://awesome-repositories.com/repository/alanjames1987-node-js-best-practices.md) (743 ⭐) — If you want to improve these best practices in any way please don't hesitate to create a pull request.
- [mvdan/sh](https://awesome-repositories.com/repository/mvdan-sh.md) (8,825 ⭐) — This project is a POSIX shell toolset providing utilities for parsing, formatting, interpreting, and validating shell scripts. It includes a parser that converts Bash and Zsh source code into structured syntax trees, a formatter for standardizing script layout, and a runtime interpreter for executing shell commands and script logic.

The toolset supports dialect-aware parsing to handle multiple shell language specifications. It provides capabilities for static analysis, allowing shell source code to be converted into structured data for external manipulation or validation against specific dial
- [ariya/phantomjs](https://awesome-repositories.com/repository/ariya-phantomjs.md) (29,489 ⭐) — PhantomJS is a scriptable, headless browser engine based on WebKit that provides a programmatic interface for automating web page interactions. It operates without a graphical user interface, allowing for the execution of JavaScript to navigate pages, manipulate the document object model, and perform functional testing of web applications.

The tool distinguishes itself by providing low-level control over the browser rendering lifecycle and network stack. It enables real-time interception and modification of network traffic, alongside the ability to generate visual snapshots and document expor
- [jessfraz/dockerfiles](https://awesome-repositories.com/repository/jessfraz-dockerfiles.md) (13,937 ⭐) — Various Dockerfiles I use on the desktop and on servers.
- [koalaman/shellcheck](https://awesome-repositories.com/repository/koalaman-shellcheck.md) (39,574 ⭐) — This project is a static analysis tool and linter designed to improve the quality, reliability, and portability of shell scripts. By performing deep structural analysis, it identifies common programming pitfalls, syntax errors, and security vulnerabilities before scripts are executed. It functions as an automated code reviewer that enforces best practices and helps developers maintain consistent, robust code across different operating environments.

The tool distinguishes itself through its dialect-aware grammar resolution, which adapts its parsing logic based on the specific shell interpreter
- [anoma/anoma](https://awesome-repositories.com/repository/anoma-anoma.md) (33,787 ⭐) — Anoma is a distributed operating system designed to abstract the complexities of blockchain networks into a unified interface for cross-chain coordination. At its core, the platform utilizes a resource-based state machine and an intent-centric execution model, where user-defined goals are processed and settled by decentralized solvers rather than through direct, manual execution. This architecture enables the creation of applications that operate across heterogeneous distributed networks while maintaining a consistent developer and user experience.

The platform distinguishes itself through a
- [oils-for-unix/oils](https://awesome-repositories.com/repository/oils-for-unix-oils.md) (3,288 ⭐) — Oils is a Unix shell interpreter and scripting language runtime that combines a modern shell language with POSIX and Bash compatibility. It functions as a structured data shell, integrating JSON and J8 formats to manage complex data without relying on string parsing.

The system is distinguished by a C++ transpiled interpreter that converts a subset of Python source code into strongly typed C++ for high-performance execution. It features a garbage-collected typed runtime that supports prototype-based polymorphism, lexical closures, and reference-based variable mutation. To decouple shell logic
- [fukamachi/dockerfiles](https://awesome-repositories.com/repository/fukamachi-dockerfiles.md) (52 ⭐) — Dockerfiles for each version of Common Lisp implementations and utilities. Currently provides the following products:
- [coder/code-server](https://awesome-repositories.com/repository/coder-code-server.md) (78,024 ⭐) — This project provides a remote development platform that enables users to access a full-featured integrated development environment through a standard web browser. By decoupling the user interface from the server-side filesystem, it allows for persistent coding workspaces to be hosted on remote servers, virtual machines, or cloud-native infrastructure, ensuring a consistent development experience from any device.

The platform distinguishes itself through a secure gateway architecture that manages traffic, authentication, and encryption at the edge. It utilizes persistent WebSocket connections
- [hadolint/hadolint](https://awesome-repositories.com/repository/hadolint-hadolint.md) (12,225 ⭐) — Hadolint is a static analysis tool designed to validate container build configurations. It functions as a security scanner and configuration auditor, parsing build instructions into a structured format to identify deviations from security and efficiency standards.

The tool distinguishes itself by performing deep inspection of embedded shell commands. By tokenizing and analyzing these scripts, it detects common scripting errors and security vulnerabilities that might otherwise persist within a container image. It integrates external analysis tools to provide specialized validation for these in
- [zhanymkanov/fastapi-best-practices](https://awesome-repositories.com/repository/zhanymkanov-fastapi-best-practices.md) (16,515 ⭐) — This project provides a comprehensive guide to architectural patterns and best practices for building scalable, maintainable, and performant web applications using FastAPI. It focuses on standardizing development approaches for Python web services, emphasizing robust request validation, dependency injection, and automated documentation standards to ensure consistent API design.

The guide distinguishes itself by promoting domain-driven modular packaging, which organizes application logic into isolated, feature-based directories to support long-term codebase scalability. It also details strateg
- [nvm-sh/nvm](https://awesome-repositories.com/repository/nvm-sh-nvm.md) (93,825 ⭐) — This project is a command-line tool designed for managing multiple runtime versions on a local machine. It functions as a shell-based environment manager that enables users to install, switch between, and maintain different versions of a runtime to support project-specific requirements or diverse shell sessions. By dynamically updating system paths and environment variables, it provides a consistent interface for runtime version control across various Unix-like operating systems.

The tool distinguishes itself through its portable, POSIX-compliant shell implementation, which ensures reliable e
- [eyaltoledano/claude-task-master](https://awesome-repositories.com/repository/eyaltoledano-claude-task-master.md) (27,567 ⭐) — This project is an autonomous, multi-model orchestrator designed to manage the full software development lifecycle through a command-line interface. It functions as an intelligent agent that decomposes high-level product goals into actionable, prioritized subtasks, manages dependency graphs, and executes development cycles. By automating requirement parsing, technical research, and task tracking, it maintains project alignment and momentum throughout the implementation process.

The system distinguishes itself through a provider-agnostic abstraction layer that allows users to assign specific a
- [moonbingbing/openresty-best-practices](https://awesome-repositories.com/repository/moonbingbing-openresty-best-practices.md) (3,620 ⭐) — This project is an API gateway optimization manual and implementation guide for OpenResty. It provides a collection of architectural patterns and coding standards for developing scriptable server logic using the Lua language within Nginx.

The repository serves as a reference for extending web server functionality and optimizing network traffic gateways. It focuses on deployment strategies and high-performance coding patterns to reduce latency and increase request throughput.

The content covers the development of custom gateway logic, edge computing workflows, and high-throughput network engi
- [denoland/deno](https://awesome-repositories.com/repository/denoland-deno.md) (107,110 ⭐) — Deno is a high-performance runtime for JavaScript and TypeScript that prioritizes security and developer productivity. Built on the V8 engine, it provides a secure execution environment that enforces a default-deny security model, requiring explicit user authorization for access to system resources like the file system, network, and environment variables. The runtime natively supports modern web-standard APIs, ensuring consistent behavior and portability across different environments.

What distinguishes Deno is its integrated approach to the software development lifecycle. It bundles essentia
- [alexeymezenin/laravel-best-practices](https://awesome-repositories.com/repository/alexeymezenin-laravel-best-practices.md) (12,299 ⭐) — This project is a comprehensive guide to architectural standards and coding patterns for developing maintainable applications within the Laravel framework. It focuses on clean code standards, applying the single responsibility and DRY principles to ensure codebase predictability and consistency.

The guide emphasizes decoupling components by moving business logic into service layers and shifting input validation into dedicated request classes to keep controllers lean. It advocates for the use of a service container and dependency injection to reduce class coupling and improve testability.

The
- [agones-dev/agones](https://awesome-repositories.com/repository/agones-dev-agones.md) (6,888 ⭐) — Agones is a Kubernetes game server orchestrator designed for hosting, scaling, and managing dedicated multiplayer game servers. It extends the Kubernetes control plane using custom resource definitions to define game server and fleet objects, utilizing a dedicated fleet manager to maintain pools of warm server instances.

The system provides a game server SDK and language-specific client libraries that allow server processes to signal readiness, health, and shutdown states directly to the controller. It distinguishes itself through specialized scaling logic, including the use of WebAssembly mo
- [spotify/dockerfile-mode](https://awesome-repositories.com/repository/spotify-dockerfile-mode.md) (564 ⭐) — An emacs mode for handling Dockerfiles
- [emotion-js/emotion](https://awesome-repositories.com/repository/emotion-js-emotion.md) (18,017 ⭐) — This project is a styling library and framework designed for component-based architectures, enabling developers to define and manage visual styles directly within JavaScript or TypeScript. It functions as a styling engine that generates unique class names from style definitions, ensuring encapsulated, predictable, and maintainable visual presentation across applications. By integrating with component logic, it allows for the creation of reusable UI elements with styles defined through template literals or object syntax.

The library distinguishes itself through a comprehensive suite of build-t
- [uber-go/nilaway](https://awesome-repositories.com/repository/uber-go-nilaway.md) (3,765 ⭐) — Nilaway is a static analysis tool and linter plugin for Go designed to identify potential nil pointer dereferences in source code to prevent runtime panics. It functions as an inter-procedural pointer analyzer that tracks data flow across functions and packages to detect memory safety issues.

The tool differentiates itself by tracking pointer states through anonymous functions, closures, and struct initializations. It employs a pointer analysis framework that monitors how values flow through a program to determine if a variable is safe to dereference at a specific point.

The analyzer can be
- [cloudflare/workerd](https://awesome-repositories.com/repository/cloudflare-workerd.md) (8,346 ⭐) — workerd is a serverless edge runtime designed for executing lightweight, distributed functions at the network edge. It utilizes a V8-based JavaScript engine to provide fast startup and low memory overhead, while maintaining a WebAssembly-compatible execution environment that allows modules to run alongside JavaScript for high-performance computational tasks.

The runtime supports isolate-based multi-tenancy to run multiple independent execution contexts within a single process. It implements an event-driven execution model that triggers code based on network requests or scheduled events and in
- [dprint/dprint](https://awesome-repositories.com/repository/dprint-dprint.md) (3,795 ⭐) — dprint is a multi-language code formatter that applies consistent styling across various programming languages using a pluggable architecture. It functions as a unified project style management tool, a command-line interface for continuous integration style enforcement, and a Language Server Protocol implementation for real-time formatting in editors.

The project is distinguished by a WebAssembly-based plugin system that loads sandboxed formatting logic from URLs or file paths. It further extends its capabilities through a process-based tool integration that wraps external command-line interf
- [palash25/best-practices-checklist](https://awesome-repositories.com/repository/palash25-best-practices-checklist.md) (969 ⭐) — A list of awesome idiomatic code resources. Rust:crab:, Go, Ruby:gem:, Pony :horse:, Ocaml :camel:, Erlang and more
