38 lines
1.0 KiB
Docker
38 lines
1.0 KiB
Docker
FROM golang:1.12-alpine
|
|
|
|
ENV TZ=Europe/Moscow
|
|
ENV TERM=xterm-color
|
|
|
|
ENV CGO_ENABLED=0
|
|
ENV GOOS=linux
|
|
ENV GOARCH=amd64
|
|
|
|
ENV GOLANGCI=1.17.1
|
|
ENV GOSWAG=1.6.2
|
|
|
|
RUN \
|
|
apk add --no-cache --update bash curl git tzdata && \
|
|
rm -rf /var/cache/apk/*
|
|
|
|
RUN \
|
|
cp /usr/share/zoneinfo/${TZ} /etc/localtime && \
|
|
echo "${TZ}" > /etc/timezone && date
|
|
|
|
RUN \
|
|
# golangci install
|
|
go get -u -v github.com/golangci/golangci-lint/cmd/golangci-lint && \
|
|
cd /go/src/github.com/golangci/golangci-lint && \
|
|
git checkout v${GOLANGCI} && \
|
|
cd /go/src/github.com/golangci/golangci-lint/cmd/golangci-lint && \
|
|
go install -ldflags "-X 'main.version=$(git describe --tags)' -X 'main.commit=$(git rev-parse --short HEAD)' -X 'main.date=$(date)'" && \
|
|
# goswag install
|
|
go get -u -v github.com/swaggo/swag/cmd/swag && \
|
|
cd /go/src/github.com/swaggo/swag && \
|
|
git checkout v${GOSWAG} && \
|
|
cd /go/src/github.com/swaggo/swag/cmd/swag && \
|
|
go install && \
|
|
# show versions
|
|
go version && \
|
|
golangci-lint --version && \
|
|
swag --version
|