github.com/chenbh/concourse/v6@v6.4.2/Dockerfile (about)

     1  # NOTE: this Dockerfile is purely for local development! it is *not* used for
     2  # the official 'concourse/concourse' image.
     3  
     4  FROM concourse/dev
     5  
     6  
     7  # download go modules separately so this doesn't re-run on every change
     8  WORKDIR /src
     9  COPY go.mod .
    10  COPY go.sum .
    11  RUN grep '^replace' go.mod || go mod download
    12  
    13  # build Concourse without using 'packr' and set up a volume so the web assets
    14  # live-update
    15  COPY . .
    16  RUN go build -gcflags=all="-N -l" -o /usr/local/concourse/bin/concourse \
    17        ./cmd/concourse
    18  VOLUME /src
    19  
    20  
    21  # build the init executable for containerd
    22  RUN  set -x && \
    23  	gcc -O2 -static -o /usr/local/concourse/bin/init ./cmd/init/init.c
    24  
    25  
    26  # generate keys (with 1024 bits just so they generate faster)
    27  RUN mkdir -p /concourse-keys
    28  RUN concourse generate-key -t rsa -b 1024 -f /concourse-keys/session_signing_key
    29  RUN concourse generate-key -t ssh -b 1024 -f /concourse-keys/tsa_host_key
    30  RUN concourse generate-key -t ssh -b 1024 -f /concourse-keys/worker_key
    31  RUN cp /concourse-keys/worker_key.pub /concourse-keys/authorized_worker_keys
    32  
    33  # 'web' keys
    34  ENV CONCOURSE_SESSION_SIGNING_KEY     /concourse-keys/session_signing_key
    35  ENV CONCOURSE_TSA_AUTHORIZED_KEYS     /concourse-keys/authorized_worker_keys
    36  ENV CONCOURSE_TSA_HOST_KEY            /concourse-keys/tsa_host_key
    37  
    38  # 'worker' keys
    39  ENV CONCOURSE_TSA_PUBLIC_KEY          /concourse-keys/tsa_host_key.pub
    40  ENV CONCOURSE_TSA_WORKER_PRIVATE_KEY  /concourse-keys/worker_key