DNSCrypt / dnscrypt-server-docker

A Docker image for a non-censoring, non-logging, DNSSEC-capable, DNSCrypt-enabled DNS resolver
https://dnscrypt.info
ISC License
670 stars 135 forks source link

Issue since 20th March push - exec format error #79

Closed ianbashford closed 4 years ago

ianbashford commented 4 years ago

Watchtower restarted the server, but I'm now just getting this in a loop standard_init_linux.go:211: exec user process caused "exec format error"

I've tried deleting the images, then pulling the image again, but I get the same error -- any ideas?

docker rmi jedisct1/dnscrypt-server (actually all the images I had) docker pull jedisct1/dnscrypt-server

docker run --name=dnscrypt-server -p 443:443/udp -p 443:443/tcp --net=host \
--ulimit nofile=90000:90000 --restart=unless-stopped \
-v /home/docker/keys:/opt/encrypted-dns/etc/keys \
-v /home/docker/lists:/opt/encrypted-dns/etc/lists \
jedisct1/dnscrypt-server init -A -N v.dnscrypt.uk  -E 104.238.186.192:443,[2001:19f0:7402:1574:5400:02ff:fe66:2cff]:443 -M 0.0.0.0:9100

standard_init_linux.go:211: exec user process caused "exec format error"

I tried deleting the state folder in keys -- but that made no difference. It's happened on both servers - any ideas?

Oh - the docker process is in this state


docker ps -a
CONTAINER ID        IMAGE                      COMMAND                  CREATED             STATUS                          PORTS               NAMES
1e823083c54c        jedisct1/dnscrypt-server   "/entrypoint.sh init…"   11 minutes ago      Restarting (1) 43 seconds ago                       dnscrypt-server
ianbashford commented 4 years ago

Oh -- I think it was the second push that caused the issue -- it was fine after the first one

time="2020-03-20T14:19:23Z" level=info msg="Found new jedisct1/dnscrypt-server:latest image (sha256:6be71c27f2594ac13b9b82e1e8bd3bc9bb33100444e60fabdd22a7e556942fc3)"
time="2020-03-20T14:19:23Z" level=info msg="Stopping /dnscrypt-server (3f2cdcc06a0d8f38ac3567b42338690788778fc737518e8241e6b4481cad8011) with SIGTERM"
time="2020-03-20T14:19:24Z" level=info msg="Creating /dnscrypt-server"
time="2020-03-20T16:54:20Z" level=info msg="Found new jedisct1/dnscrypt-server:latest image (sha256:5a4414b3d4ea45b0765cc69506c7474ad7dc9a962e0f0981770ea923cdaf6906)"
time="2020-03-20T16:54:20Z" level=info msg="Stopping /dnscrypt-server (ba94a20d40b725945a45fbe3146f41bb65f5a1ae388097107b97cc5db959cb48) with SIGTERM"
time="2020-03-20T16:54:21Z" level=info msg="Creating /dnscrypt-server"
ianbashford commented 4 years ago

All good -- thanks

jedisct1 commented 4 years ago

Oops, thanks for reporting this.

I'm using it on an ARM64 host, and pushed an ARM64 version of it, thinking that the Docker Hub would be smart and store images built for different architectures independently.

Apparently not :/

ianbashford commented 4 years ago

NP - could the docker images get version numbers maybe?
As there was only a 'latest' tag, I found I struggled to easily roll back to the most recent good version. Partly my fault, as I removed all the docker images on my host to attempt to resolve it...
The latest tag still works, but in situations like this the rollback process would be simpler - just a thought...