🐋

Dockerfile Linter — Optimize & Secure Your Container Builds

Lint Dockerfile instructions for best practices, security issues, and layer optimization. Flags unpinned base images, root user, ADD vs COPY, apt-get mistakes, shell-form CMD, and more — with fix guidance for each issue.

Devops ToolsDevOps & Infrastructure
Loading tool...

How to Use Dockerfile Linter — Optimize & Secure Your Container Builds

How to Use the Dockerfile Linter

Step 1: Paste Your Dockerfile

Copy your entire Dockerfile and paste it into the input area. The linter parses all instructions including multi-line RUN commands joined with backslash continuations.

Step 2: Review the Summary

The summary bar shows the total issue count broken down by severity — errors (critical, must fix), warnings (important best practices), and info (recommendations). The instruction count confirms how many Dockerfile statements were successfully parsed.

Step 3: Expand Issues for Details

Click any issue card to expand it and see a full explanation of why the practice is problematic, plus a concrete fix suggestion you can copy directly into your Dockerfile.

Step 4: Try the Example Dockerfiles

Use the example buttons to see the linter in action on a naive Dockerfile (many issues), a typical Node.js app Dockerfile (some issues), and a production-ready multi-stage Dockerfile (minimal issues). These examples illustrate how each rule applies in practice.

Checks Performed

SeverityCheckWhat It Catches
ErrorMissing FROMDockerfile with no base image
WarningUnpinned base imageFROM node (no tag) or FROM node:latest
WarningRoot userNo USER instruction or explicit USER root
WarningADD vs COPYADD used for local files instead of COPY
Warningapt-get without -yInteractive prompt would hang the build
Warningapt cache not clearedrm -rf /var/lib/apt/lists/* missing
Warningapt-get update aloneStandalone update creates stale cache layer
WarningShell-form CMD/ENTRYPOINTPoor signal handling, PID 1 is shell
WarningSecrets in ENVPASSWORD, SECRET, TOKEN, API_KEY in ENV
WarningSource before manifestsLayer cache busted on every code change
InfoNo WORKDIRFiles land in root directory
InfoMany RUN layers5+ separate RUN commands bloat image
InfoNo EXPOSEPort not documented
InfoNo HEALTHCHECKOrchestrators cannot detect unhealthy containers

Frequently Asked Questions

Most Viewed Tools

📺

Screen Size Converter — Diagonal Dimension Tool

3,499 views

Calculate screen width and height from diagonal size and aspect ratio. Convert between inches and centimeters for displays, TVs, and monitors with instant dimension calculations.

Use Tool →
🔐

TOTP Code Generator — 2FA Testing Tool

3,359 views

Generate time-based one-time passwords from a TOTP secret key. Enter your base32 secret, choose a period and digit length, and get the current and next codes with a live countdown timer. Useful for testing and debugging 2FA integrations.

Use Tool →
{ }

JSON to Zod — Schema Generator

3,288 views

Generate Zod validation schema code from a JSON sample object. Infers z.string(), z.number(), z.boolean(), z.array(), z.object(), and z.null() types automatically. Handles nested objects, arrays of objects with optional field detection, and outputs copy-ready TypeScript with import and z.infer type alias.

Use Tool →
{}

JSONL Formatter — Line-by-Line Validator

3,224 views

Format, validate, and inspect JSON Lines (JSONL) and NDJSON files. Validates each line individually, reports parse errors by line number, outputs compact JSONL or a pretty-print preview, and lets you download the cleaned file.

Use Tool →
🔑

Password Entropy Calculator — Crack Time Estimator

3,001 views

Calculate the information-theoretic bit entropy of any password or API key. Detects character set pools automatically, shows the total number of possible combinations, and estimates crack time across five attack scenarios from rate-limited web logins to GPU cracking clusters.

Use Tool →
🔐

TLS Cipher Suite Checker — Strength Analyzer

2,984 views

Check TLS protocol version compatibility and cipher suite strength ratings against current best practices. Supports IANA and OpenSSL cipher names — rates each suite as Strong, Weak, or Deprecated and explains why.

Use Tool →
🔍

Secret Scanner — API Key & Credential Detector

2,832 views

Scan pasted text, code, or config files for accidentally exposed API keys, tokens, passwords, and private keys. Detects 50+ secret types across AWS, GitHub, Stripe, OpenAI, and more — all client-side, nothing leaves your browser.

Use Tool →

TOML Config Validator — Syntax Error Finder

2,625 views

Validate TOML configuration file syntax and report errors with line numbers. Paste any TOML content — Cargo.toml, pyproject.toml, config.toml — and instantly see a green checkmark with key counts and structure stats, or a precise error message pointing to the exact line. Includes a collapsible JSON structure preview to confirm what was parsed.

Use Tool →

Related DevOps & Infrastructure Tools

🐙

Docker Compose Validator — Multi-Container YAML Syntax & Logic Check

Validate docker-compose.yml syntax, service definitions, networks, volumes, and environment variables. Catches YAML errors, broken depends_on references, missing image/build, invalid restart policies, and more — with context-aware hints.

Use Tool →
🔍

HTTP Header Analyzer — Security & CORS Audit

Parse and analyze HTTP request or response headers. Identifies categories, explains each header, flags missing security headers, and detects duplicates or suspicious values — entirely in your browser.

Use Tool →
📋

API Response Formatter — JSON Pretty Printer

Format and beautify API responses for better readability. JSON formatter with minify and prettify options.

Use Tool →
🤖

robots.txt Validator — Crawl Rule Checker

Validate your robots.txt file against the Robots Exclusion Protocol. Checks directive syntax, path formats, Crawl-delay values, and Sitemap URLs. Previews crawl rules per user-agent group. Free and runs entirely in your browser.

Use Tool →
🔌

Port Number Lookup — Common TCP/UDP Service & Protocol Database

Searchable reference for 80+ well-known TCP and UDP ports. Look up any port number or service name to see the official protocol, service description, port range (well-known/registered), and security recommendations for risky ports.

Use Tool →
🤖

Robots.txt Generator — Crawler Control Tool

Generate robots.txt file to control search engine crawlers. Create user-agent rules, allow/disallow paths, set crawl delays, and add sitemap URLs. Perfect for managing bot access to your website.

Use Tool →
🔗

Query String Parser — URL Parameter Decoder

Parse URL query strings into readable key-value pairs. Decode parameters and inspect URL search queries with ease.

Use Tool →
☸️

Kubernetes YAML Validator — K8s Manifest Schema & Security Audit

Validate Kubernetes YAML manifests for syntax errors and required field completeness. Checks Deployments, Services, Ingress, ConfigMaps, Secrets, PVCs, HPAs, CronJobs, and more — with per-document results and fix hints.

Use Tool →

Share Your Feedback

Help us improve this tool by sharing your experience

We will only use this to follow up on your feedback