github.com/pdfcpu/pdfcpu@v0.11.1/Dockerfile (about)

     1  # Dockerfile References: https://docs.docker.com/engine/reference/builder/
     2  #
     3  # Usage:
     4  #
     5  # docker build -t pdfcpu .
     6  #
     7  # Simple one off container:
     8  # docker run pdfcpu
     9  #
    10  # One off container with dir binding:
    11  # docker run -v $(pwd):/data -it --rm pdfcpu pdfcpu val test.pdf
    12  #
    13  # Create & run reusable container with dir binding:
    14  # docker run --name pdfcpu -v $(pwd):/data -it pdfcpu /bin/sh
    15  # /data # ...            // run pdfcpu commands against your data
    16  # /data # exit           // exit container
    17  #
    18  # docker start -i pdfcpu // restart container with dir binding
    19  # /data # ...            // run pdfcpu commands against your data
    20  # /data # exit           // exit container
    21  
    22  # Start from the latest golang base image
    23  FROM golang:latest AS builder
    24  
    25  # install
    26  RUN go install github.com/pdfcpu/pdfcpu/cmd/pdfcpu@latest
    27  
    28  ######## Start a new stage from scratch #######
    29  
    30  FROM alpine:latest
    31  
    32  RUN apk --no-cache add ca-certificates gcompat
    33  
    34  WORKDIR /root
    35  
    36  # Copy the pre-built binary file from the previous stage
    37  COPY --from=builder /go/bin ./
    38  
    39  # Export path of executable
    40  ENV PATH="${PATH}:/root"
    41  
    42  VOLUME /app
    43  WORKDIR /app
    44  
    45  # Entrypoint for container default executable
    46  ENTRYPOINT ["pdfcpu"]
    47  
    48