Dockerfile-release.amd64 (etcd-3.5.6) | : | Dockerfile-release.amd64 (etcd-3.5.7) | ||
---|---|---|---|---|
# TODO: move to k8s.gcr.io/build-image/debian-base:bullseye-v1.y.z when patched | FROM --platform=linux/amd64 gcr.io/distroless/static-debian11 | |||
FROM debian:bullseye-20220328 | ||||
ADD etcd /usr/local/bin/ | ADD etcd /usr/local/bin/ | |||
ADD etcdctl /usr/local/bin/ | ADD etcdctl /usr/local/bin/ | |||
ADD etcdutl /usr/local/bin/ | ADD etcdutl /usr/local/bin/ | |||
RUN mkdir -p /var/etcd/ | ||||
RUN mkdir -p /var/lib/etcd/ | WORKDIR /var/etcd/ | |||
WORKDIR /var/lib/etcd/ | ||||
# Alpine Linux doesn't use pam, which means that there is no /etc/nsswitch.conf, | # Alpine Linux doesn't use pam, which means that there is no /etc/nsswitch.conf, | |||
# but Golang relies on /etc/nsswitch.conf to check the order of DNS resolving | # but Golang relies on /etc/nsswitch.conf to check the order of DNS resolving | |||
# (see https://github.com/golang/go/commit/9dee7771f561cf6aee081c0af6658cc81fac3 918) | # (see https://github.com/golang/go/commit/9dee7771f561cf6aee081c0af6658cc81fac3 918) | |||
# To fix this we just create /etc/nsswitch.conf and add the following line: | ADD nsswitch.conf /etc/nsswitch.conf | |||
RUN echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswit | ||||
ch.conf | ||||
EXPOSE 2379 2380 | EXPOSE 2379 2380 | |||
# Define default command. | # Define default command. | |||
CMD ["/usr/local/bin/etcd"] | CMD ["/usr/local/bin/etcd"] | |||
End of changes. 3 change blocks. | ||||
7 lines changed or deleted | 5 lines changed or added |