mirror of
https://github.com/jesseduffield/lazydocker.git
synced 2026-07-23 07:31:03 +00:00
- Added .dockerignore to speed up build context and avoid rebuilding when unecessary - Specified Alpine and Go versions as build arguments - Specified Go target CPU architecture as build arguments to be able to build for ARM devices - Specified base images as build arguments to be able to build for ARM devices - Trimmed down size of final image using `-a -installsuffix cgo -ldflags="-s -w"` go build flags and by copying the statically built binary only to the final image - Added clear build and run instructions for the Docker container
16 lines
598 B
Docker
16 lines
598 B
Docker
ARG BASE_IMAGE_BUILDER=golang
|
|
ARG BASE_IMAGE=alpine
|
|
ARG ALPINE_VERSION=3.10
|
|
ARG GO_VERSION=1.12.6
|
|
|
|
FROM ${BASE_IMAGE_BUILDER}:${GO_VERSION}-alpine${ALPINE_VERSION} AS builder
|
|
ARG GOARCH=amd64
|
|
ARG GOARM
|
|
WORKDIR /go/src/github.com/jesseduffield/lazydocker/
|
|
COPY ./ .
|
|
RUN CGO_ENABLED=0 GOOS=linux GOARCH=${GOARCH} GOARM=${GOARM} go build -a -installsuffix cgo -ldflags="-s -w"
|
|
|
|
FROM ${BASE_IMAGE}:${ALPINE_VERSION}
|
|
RUN apk --update add -q --progress --no-cache -U git xdg-utils
|
|
ENTRYPOINT [ "lazydocker" ]
|
|
COPY --from=builder /go/src/github.com/jesseduffield/lazydocker/lazydocker /usr/bin/lazydocker
|