-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathDockerfile
37 lines (32 loc) · 1.18 KB
/
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
28
29
30
31
32
33
34
35
36
37
ARG GO_VERSION=1.16.5
FROM golang:${GO_VERSION}
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get -y install --no-install-recommends apt-utils 2>&1
# Verify git, process tools, lsb-release (common in install instructions for CLIs) installed.
RUN apt-get -y install curl git iproute2 lsb-release procps vim wget
# Install Go tools.
RUN apt-get update \
# Install other tools.
&& GO111MODULE=on go get golang.org/x/tools/gopls@latest \
&& go get -u -v \
github.com/mdempsky/gocode \
github.com/uudashr/gopkgs/v2/cmd/gopkgs \
github.com/ramya-rao-a/go-outline \
github.com/acroca/go-symbols \
golang.org/x/tools/cmd/guru \
golang.org/x/tools/cmd/gorename \
github.com/go-delve/delve/cmd/dlv \
github.com/stamblerre/gocode \
github.com/rogpeppe/godef \
golang.org/x/tools/cmd/goimports \
golang.org/x/lint/golint 2>&1 \
github.com/sqs/goreturns \
github.com/jnewmano/grpc-json-proxy \
# Clean up.
&& apt-get autoremove -y \
&& apt-get clean -y \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /src
# Revert workaround at top layer.
ENV DEBIAN_FRONTEND=dialog