FROM alpine:latest ADD etcd /usr/local/bin/ ADD etcdctl /usr/local/bin/ RUN mkdir -p /var/etcd/ RUN mkdir -p /var/lib/etcd/ # 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 # (see https://github.com/golang/go/commit/9dee7771f561cf6aee081c0af6658cc81fac3918) # To fix this we just create /etc/nsswitch.conf and add the following line: RUN echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf EXPOSE 2379 2380 # Define default command. CMD ["/usr/local/bin/etcd"]