/
Dockerfile
27 lines (18 loc) · 875 Bytes
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Builder image
FROM golang:latest as builder
# Install dependencies
RUN apt-get update && apt-get upgrade -q -y && \
apt-get install -y --no-install-recommends git build-essential
RUN curl -sL https://deb.nodesource.com/setup_10.x | bash - && \
apt-get install -y nodejs
RUN go get -u github.com/gobuffalo/packr/... && go get -u github.com/gopherjs/gopherjs && npm install -g sass
ADD . /go/src/github.com/gbotrel/zsldemo
# go generate will generate app.css from app.scss and compile app.js (gopherjs)
RUN cd /go/src/github.com/gbotrel/zsldemo/frontend && go generate
# packr produces a fat binary including the static assets (html, css, js)
RUN cd /go/src/github.com/gbotrel/zsldemo && packr && go build
# Binaries only image
FROM debian:latest
COPY --from=builder /go/src/github.com/gbotrel/zsldemo/zsldemo /usr/local/bin/
EXPOSE 8001
ENTRYPOINT ["zsldemo"]