Dockerfile format.
NOTE: This is a work in progress so calm yourself if you want to file 80 bajillion issues.
Table of Contents
For installation instructions from binaries please visit the Releases Page.
$ go get github.com/jessfraz/dockfmt
$ dockfmt -h dockfmt - Dockerfile format. Usage: dockfmt <command> Flags: -d, --debug enable debug logging (default: false) Commands: base List the base image used in the Dockerfile(s). dump Dump parsed Dockerfile(s). fmt Format the Dockerfile(s). maintainer List the maintainer for the Dockerfile(s). stages List the stages in the Dockerfile. workdir List the workdirs for the Dockerfile(s). version Show the version information.
$ dockfmt fmt -h Usage: dockfmt fmt [OPTIONS] [DOCKERFILE...] Format the Dockerfile(s). Flags: -D, --diff display diffs instead of rewriting files (default: false) -d, --debug enable debug logging (default: false) -l, --list list files whose formatting differs from dockfmt's (default: false) -w, --write write result to (source) file instead of stdout (default: false)
$ dockfmt fmt -d htop/Dockerfile diff htop/Dockerfile dockfmt/htop/Dockerfile --- /tmp/dockfmt143910590 2016-09-19 15:59:22.612250710 -0700 +++ /tmp/dockfmt412224773 2016-09-19 15:59:22.612250710 -0700 @@ -4,10 +4,11 @@ # --pid host \ # jess/htop # -FROM alpine:latest -MAINTAINER Jessie Frazelle <jess@linux.com> + +FROM alpine:latest +MAINTAINER Jessie Frazelle <jess@linux.com> -RUN apk --no-cache add \ +RUN apk add --no-cache \ htop -CMD [ "htop" ] +CMD ["htop"]
$ dockfmt fmt -l */Dockerfile */*/Dockerfile ab/Dockerfile afterthedeadline/Dockerfile android-tools/Dockerfile ansible/Dockerfile apt-file/Dockerfile atom/Dockerfile audacity/Dockerfile awscli/Dockerfile beeswithmachineguns/Dockerfile buttslock/Dockerfile camlistore/Dockerfile cathode/Dockerfile ...
$ dockfmt base */Dockerfile */*/Dockerfile BASE COUNT debian:stretch 50 alpine:latest 30 debian:sid 28 ubuntu:16.04 12 alpine:edge 7 python:2-alpine 3 ruby:alpine 2 java:7-alpine 2 r.j3ss.co/wine 1 kalilinux/kali-linux-docker 1 haskell 1 mhart/alpine-node:5 1 r.j3ss.co/cpuminer 1 opensuse 1 java:8-alpine 1 golang:latest 1
$ dockfmt maintainer */Dockerfile */*/Dockerfile MAINTAINER COUNT Jessie Frazelle <jess@jskdj.com> 113 Christian Koep <christian.koep@ksldkfj.de> 11 Justin Garrison <justinleegarrison@hskdl.com> 2 Daniel Romero <infoslack@jjskl.com> 1 Cris G c@skdlemfhtj.com 1
$ dockfmt stages Dockerfile STAGE INTERPOLATED health-check false python-deps false stage-2 true
$ dockfmt workdir */Dockerfile */*/Dockerfile WORKDIR COUNT /srv 3 /app 1