diff options
Diffstat (limited to 'Dockerfile')
-rw-r--r-- | Dockerfile | 28 |
1 files changed, 24 insertions, 4 deletions
@@ -1,11 +1,12 @@ -FROM ubuntu:20.04 +# BUILD STAGE +FROM ubuntu:20.04 AS BUILDSTAGE # Install tools and libraries -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -qq git golang-1.14 pkg-config libpcap-dev libhyperscan-dev yarnpkg +RUN apt-get update && \ + DEBIAN_FRONTEND=noninteractive apt-get install -qq git golang-1.14 pkg-config libpcap-dev libhyperscan-dev yarnpkg curl RUN ln -sf ../lib/go-1.14/bin/go /usr/bin/go -ENV GIN_MODE release COPY . /caronte @@ -13,6 +14,25 @@ WORKDIR /caronte RUN go mod download && go build -RUN cd frontend && yarnpkg install && yarnpkg build +RUN cd frontend && \ + yarnpkg install && \ + yarnpkg build --production=true +RUN curl -sf https://gobinaries.com/tj/node-prune | sh && cd /caronte/frontend && node-prune + + +# LAST STAGE +FROM ubuntu:20.04 + +COPY --from=BUILDSTAGE /caronte/caronte /caronte/caronte +COPY --from=BUILDSTAGE /caronte/frontend /caronte/frontend +COPY --from=BUILDSTAGE /caronte/shared /caronte/shared + +RUN apt-get update && \ + DEBIAN_FRONTEND=noninteractive apt-get install -qq libpcap-dev libhyperscan-dev && \ + rm -rf /var/lib/apt/lists/* + +ENV GIN_MODE release + +WORKDIR /caronte CMD ./caronte |