diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..c4b18a8 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,20 @@ +FFROM golang:alpine AS build_base +#ENV GOARCH arm64 +#ENV GOARCH amd64 +RUN apk add --no-cache git gcc ca-certificates libc-dev \ +&& mkdir -p /go/src/github.com/librespeed/ \ +&& cd /go/src/github.com/librespeed/ \ +&& git clone https://github.com/librespeed/speedtest-go.git +WORKDIR /go/src/github.com/librespeed/speedtest-go +RUN go get ./ && go build -ldflags "-w -s" -trimpath -o speedtest main.go + +FROM alpine:3.9 +RUN apk add ca-certificates +WORKDIR /app +COPY --from=build_base /go/src/github.com/librespeed/speedtest-go/speedtest . +COPY --from=build_base /go/src/github.com/librespeed/speedtest-go/assets ./assets +COPY --from=build_base /go/src/github.com/librespeed/speedtest-go/settings.toml . + +EXPOSE 8989 + +CMD ["./speedtest"] \ No newline at end of file diff --git a/README.md b/README.md index 9851e2c..2b8507b 100644 --- a/README.md +++ b/README.md @@ -49,14 +49,12 @@ manually, you can install newer version of Go into your GOPATH: ``` $ git clone github.com/librespeed/speedtest-go - # Switch to the Go branch - $ git checkout go ``` 2. Build ``` # Change current working directory to the repository - $ cd speedtest + $ cd speedtest-go # Compile $ go build -ldflags "-w -s" -trimpath -o speedtest main.go ```