1
0
Fork 0
mirror of https://github.com/Luzifer/gziphttp.git synced 2024-12-20 19:21:17 +00:00
Very simple HTTP server for serving static files with ability for gzip compression if supported by the client
Find a file
Knut Ahlers 17e81d7251
Add example to README
Signed-off-by: Knut Ahlers <knut@ahlers.me>
2019-06-02 01:22:51 +02:00
.gitignore Initial version 2019-06-02 01:12:35 +02:00
go.mod Initial version 2019-06-02 01:12:35 +02:00
go.sum Initial version 2019-06-02 01:12:35 +02:00
LICENSE Initial version 2019-06-02 01:12:35 +02:00
main.go Initial version 2019-06-02 01:12:35 +02:00
README.md Add example to README 2019-06-02 01:22:51 +02:00

Go Report Card

Luzifer / gziphttp

Very simple HTTP server for serving static files with ability for gzip compression if supported by the client.

Usage

Here is an example usage inside a Docker container containing (quite large) compiled JavaScript files:

FROM golang:alpine as go

RUN set -ex \
 && apk add git \
 && go get -v github.com/Luzifer/gziphttp


FROM node:alpine as node

COPY . /src
WORKDIR /src

RUN set -ex \
 && npm ci \
 && npm run build


FROM alpine:latest

COPY --from=go    /go/bin/gziphttp  /usr/local/bin/
COPY --from=node  /src/dist         /usr/local/share/webtotp

EXPOSE 3000/tcp
CMD ["gziphttp", "-d", "/usr/local/share/webtotp"]

In this case gziphttp serves compressed files to most (all modern) browsers which ensures the download size of the JavaScript files does not hurt as much as it would without gzip compression.