Skip to content

Commit 5797fc2

Browse files
committed
feat(docker-go-dev): add arm64 support
1 parent 3c4999e commit 5797fc2

1 file changed

Lines changed: 16 additions & 40 deletions

File tree

rootfs/Dockerfile

Lines changed: 16 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,21 @@
1-
FROM ubuntu:20.04
1+
FROM golang:1.15
22

33
LABEL name="drycc-go-dev"
44

5-
ENV AZCLI_VERSION=2.9.1 \
6-
DOCKER_VERSION=19.03.9 \
7-
GO_VERSION=1.14.6 \
8-
KUBECTL_VERSION=v1.18.6 \
9-
SHELLCHECK_VERSION=v0.7.1 \
10-
ETCDCTL_VERSION=v3.4.10 \
11-
GOLANGCI_LINT_VERSION=v1.29.0 \
12-
PATH=$PATH:/usr/local/go/bin:/go/bin:/usr/local/bin/docker \
13-
GOPATH=/go
5+
ENV GOLANGCI_LINT_VERSION=v1.29.0
146

157
# This is a huge one-liner to optimize the Docker image layer.
168
# We disable source repos to speed up apt-get update.
17-
RUN export DEBIAN_FRONTEND=noninteractive && \
18-
apt-get update && \
19-
apt-get upgrade -y --no-install-recommends && \
20-
apt-get install -y --no-install-recommends \
9+
RUN export DEBIAN_FRONTEND=noninteractive \
10+
&& apt-get update \
11+
&& apt-get install -y lsb-release \
12+
&& curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add - \
13+
&& curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add - \
14+
&& echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | tee -a /etc/apt/sources.list.d/kubernetes.list \
15+
&& echo "deb https://download.docker.com/linux/debian $(lsb_release -cs) stable" | tee -a /etc/apt/sources.list.d/docker.list \
16+
&& apt-get update \
17+
&& apt-get upgrade -y --no-install-recommends \
18+
&& apt-get install -y --no-install-recommends \
2119
bash \
2220
build-essential \
2321
ca-certificates \
@@ -32,9 +30,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
3230
netcat \
3331
openssh-client \
3432
procps \
35-
python3 \
36-
python3-dev \
37-
python3-pip \
3833
rsync \
3934
ruby \
4035
unzip \
@@ -43,36 +38,17 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
4338
vim \
4439
wget \
4540
zip \
46-
&& wget https://github.com/koalaman/shellcheck/releases/download/$SHELLCHECK_VERSION/shellcheck-$SHELLCHECK_VERSION.linux.x86_64.tar.xz \
47-
&& xz -d shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar.xz \
48-
&& tar -xvf shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar \
49-
&& cp shellcheck-${SHELLCHECK_VERSION}/shellcheck /usr/local/bin/ \
50-
&& chmod +x /usr/local/bin/shellcheck \
51-
&& rm -rf shellcheck-${SHELLCHECK_VERSION} shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar \
52-
&& curl -L https://storage.googleapis.com/golang/go$GO_VERSION.linux-amd64.tar.gz | tar -C /usr/local -xz \
53-
&& curl -sSL https://storage.googleapis.com/kubernetes-release/release/$KUBECTL_VERSION/bin/linux/amd64/kubectl -o /usr/local/bin/kubectl \
54-
&& chmod +x /usr/local/bin/kubectl \
55-
&& mkdir -p /go/bin \
56-
&& apt-get update && apt-get -f -y install \
57-
&& curl -fsSLO https://download.docker.com/linux/static/stable/x86_64/docker-$DOCKER_VERSION.tgz \
58-
&& tar xzvf docker-$DOCKER_VERSION.tgz -C /usr/local/bin \
59-
&& chmod +x -R /usr/local/bin/docker \
60-
&& rm docker-$DOCKER_VERSION.tgz \
61-
&& curl -L https://github.com/coreos/etcd/releases/download/$ETCDCTL_VERSION/etcd-$ETCDCTL_VERSION-linux-amd64.tar.gz -o /tmp/etcd-$ETCDCTL_VERSION.tar.gz \
62-
&& tar -C /tmp -xvzf /tmp/etcd-$ETCDCTL_VERSION.tar.gz --strip-components=1 etcd-$ETCDCTL_VERSION-linux-amd64/etcdctl \
63-
&& mv /tmp/etcdctl /usr/local/bin/etcdctl \
64-
&& rm /tmp/etcd-$ETCDCTL_VERSION.tar.gz \
41+
shellcheck \
42+
etcd \
43+
kubectl \
44+
docker-ce-cli \
6545
&& go env -w GO111MODULE=on \
66-
&& go env -w GOPROXY=https://goproxy.cn,direct \
6746
&& go get -u -v \
6847
github.com/AlekSi/gocov-xml \
6948
github.com/axw/gocov/gocov \
7049
github.com/mitchellh/gox \
7150
golang.org/x/lint \
7251
&& curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s -- -b $GOPATH/bin $GOLANGCI_LINT_VERSION \
73-
&& pip3 install --disable-pip-version-check --no-cache-dir \
74-
azure-cli==${AZCLI_VERSION} shyaml \
75-
&& apt-get purge --auto-remove -y libffi-dev python3-dev python3-pip \
7652
&& apt-get autoremove -y \
7753
&& apt-get clean -y \
7854
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/man /usr/share/doc

0 commit comments

Comments
 (0)