squeaknode/docker/frontend/Dockerfile
Jonathan Zernik 9aef37bd71
Update docker compose yaml (#259)
* Use sqlite for squeak node in docker compose

* Include other sqkserver in docker docker-compose

* Use second instance of squeak node in docker compose

* Remove old log line
2020-09-27 14:54:34 -07:00

41 lines
1 KiB
Docker

FROM node:10-stretch
ARG PORT
RUN apt-get -qq update && apt-get -qq install -y \
unzip
RUN npm install -g serve
WORKDIR /tmp
RUN curl -sSL https://github.com/protocolbuffers/protobuf/releases/download/v3.12.2/\
protoc-3.12.2-linux-x86_64.zip -o protoc.zip && \
unzip -qq protoc.zip && \
cp ./bin/protoc /usr/local/bin/protoc
RUN curl -sSL https://github.com/grpc/grpc-web/releases/download/1.2.0/\
protoc-gen-grpc-web-1.2.0-linux-x86_64 -o /usr/local/bin/protoc-gen-grpc-web && \
chmod +x /usr/local/bin/protoc-gen-grpc-web
COPY frontend/squeak-node-frontend .
# Copy the proto files
COPY proto/* src/proto/
RUN cd src && \
protoc -I=. proto/squeak_admin.proto proto/lnd.proto \
--js_out=import_style=commonjs:. \
--grpc-web_out=import_style=commonjs,mode=grpcwebtext:.
# Copy the eslint prepend script.
COPY "docker/frontend/pb_disable-eslint.sh" .
RUN chmod +x pb_disable-eslint.sh && \
./pb_disable-eslint.sh src/proto/
RUN npm install && \
REACT_APP_PORT=${PORT} \
npm run build
EXPOSE 8081
CMD ["serve", "-s", "build", "-l", "8081"]