github.com/kaleido-io/firefly@v0.0.0-20210622132723-8b4b6aacb971/Dockerfile (about)

     1  FROM golang:1.16-alpine3.13 AS firefly-builder
     2  RUN apk add make gcc build-base
     3  WORKDIR /firefly
     4  ADD . .
     5  RUN make
     6  WORKDIR /firefly/solidity_firefly
     7  
     8  FROM node:14-alpine3.11 AS solidity-builder
     9  WORKDIR /firefly/solidity_firefly
    10  ADD solidity_firefly .
    11  RUN npm install
    12  RUN npm config set user 0
    13  RUN npx truffle compile
    14  
    15  FROM node:14-alpine3.11 AS firefly-ui-builder
    16  RUN apk add git
    17  RUN git clone https://github.com/hyperledger-labs/firefly-ui.git
    18  WORKDIR /firefly-ui
    19  RUN npm install
    20  RUN PUBLIC_URL="/ui" npm run build
    21  
    22  FROM alpine:latest  
    23  WORKDIR /firefly
    24  COPY --from=firefly-builder /firefly/firefly ./firefly
    25  COPY --from=firefly-builder /firefly/db ./db
    26  COPY --from=solidity-builder /firefly/solidity_firefly/build/contracts ./contracts
    27  COPY --from=firefly-ui-builder /firefly-ui/build ./frontend
    28  RUN ln -s /firefly/firefly /usr/bin/firefly
    29  ENTRYPOINT [ "firefly" ]