emqxarchive / emqx-docker

This repository is no longer maintained, please go to https://github.com/emqx/emqx-rel/tree/master/deploy/docker
Apache License 2.0
235 stars 162 forks source link

Raspberry Pi standard_init_linux.go:207: exec user process caused "exec format error #108

Open Ativerc opened 5 years ago

Ativerc commented 5 years ago

BUG REPORT

Expected behavior

Actual behavior

running emqx/emqx:latest on a Raspberry Pi 2 Model B using Docker exits with exit status code 1. The error is standard_init_linux.go:207: exec user process caused "exec format error". Check the bash output below.

Test code

pi@raspberrypi:~ $ docker run -tid --name emq30 -p 1883:1883 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 8080:8080 -p 18083:18083 emqx/emqx:latest
7e6120af4f27587d710eebbdc531fba07ae0f769437fa39823ac99ed8dd4f59e
pi@raspberrypi:~ $ docker image ls -a
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
emqx/emqx           latest              a3d3ce29151a        6 days ago          89.5MB
emqx/emqx           v3.0.1-amd64        2b6c3f9bc5eb        2 months ago        78.9MB
hello-world         latest              618e43431df9        2 months ago        1.64kB
pi@raspberrypi:~ $ docker container ls -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
7e6120af4f27        emqx/emqx:latest    "start.sh"          45 seconds ago      Exited (1) 21 seconds ago                       emq30
b0844f4b3e01        hello-world         "/hello"            14 hours ago        Exited (0) 14 hours ago                         youthful_robinson
pi@raspberrypi:~ $ docker logs 7e612
standard_init_linux.go:207: exec user process caused "exec format error"

EMQ version

Docker image: emqx/emqx latest a3d3ce29151a

Docker version

Which docker-engine version?

$ docker --version
Docker version 18.09.0, build 4d60db4
$ docker info
Containers: 2
 Running: 0
 Paused: 0
 Stopped: 2
Images: 3
Server Version: 18.09.0
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: e6b3f5632f50dbc4e9cb6288d911bf4f5e95b18e
runc version: 6635b4f0c6af3810594d2770f662f34ddc15b40d
init version: fec3683
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.14.98-v7+
Operating System: Raspbian GNU/Linux 9 (stretch)
OSType: linux
Architecture: armv7l
CPUs: 4
Total Memory: 927.2MiB
Name: raspberrypi
ID: RBTT:F75I:7ZXD:OHSV:E2E7:PNBP:5SZV:NIH4:X6AK:HPBX:AL4Y:QNEG
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine

WARNING: No memory limit support
WARNING: No swap limit support
WARNING: No kernel memory limit support
WARNING: No oom kill disable support
WARNING: No cpu cfs quota support
WARNING: No cpu cfs period support

System

OS: Raspbian GNU/Linux 9.8 (stretch) armv7l

Hardware

Model: Raspberry Pi 2 Model B Rev 1.1

Message to Developers/Readers

I'm a newbie with docker and MQTT. Am I doing something wrong? Is there a separate image for arm machines? Docker had automatically downloaded the emqx/emqx:latest image about half an hour back.

docker run -tid --name emq30 -p 1883:1883 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 8080:8080 -p 18083:18083 emqx/emqx
Unable to find image 'emqx/emqx:latest' locally
latest: Pulling from emqx/emqx
169185f82c45: Pull complete 
a65c17c415ae: Pull complete 
c5ca534482a2: Pull complete 
7cd85d790106: Pull complete 
b8da354e4bcc: Pull complete 
d535259f985f: Pull complete 
81872a7f9b5b: Pull complete 
Digest: sha256:49f656c721c8b33d522fc3648ec9f653d2ec9ed2e73f9b0af06eafa63c62f0d9
Status: Downloaded newer image for emqx/emqx:latest
Rory-Z commented 5 years ago

You can try emqx/emqx:V3.0.1-arm64v8

RaymondMouthaan commented 5 years ago

@zhanghongtong, why is it still not manifest listed? 🙄

oORiggsOo commented 5 years ago

docker run -p 8888:8888 jupyter/scipy-notebook

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

Rory-Z commented 5 years ago

@oORiggsOo What is jupyter/scipy-notebook?

Rory-Z commented 5 years ago

@RaymondMouthaan Sorry for replying so lately, now we support the manifest list.

Huluvu424242 commented 5 years ago

I have the same error at cubietruck with ubuntu and oose/jenkins image: (access via remote, DOCKER_HOST was correct, groupid 999 is correct from remote host /etc/group entry docker)

docker run -p 8080:8080 -p 50000:50000 -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v /var/lib/jenkins_home:/var/jenkins_home -e "DOCKER_GID_ON_HOST=999" oose/dockerjenkins

via ssh: docker info thomas@cubietruck:~$ sudo docker info Containers: 15 Running: 0 Paused: 0 Stopped: 15 Images: 5 Server Version: 18.09.2 Storage Driver: overlay2 Backing Filesystem: extfs Supports d_type: true Native Overlay Diff: true Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge host macvlan null overlay Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog Swarm: inactive Runtimes: runc Default Runtime: runc Init Binary: docker-init containerd version: 9754871865f7fe2f4e74d43e2fc7ccd237edcbce runc version: 09c8266bf2fcf9519a651b04ae54c967b9ab86ec init version: v0.18.0 (expected: fec3683b971d9c3ef73f284f176672c44b448662) Security Options: seccomp Profile: default Kernel Version: 4.19.38-sunxi Operating System: Ubuntu 18.04.2 LTS OSType: linux Architecture: armv7l CPUs: 2 Total Memory: 1.963GiB Name: cubietruck ID: CDQR:HQYD:LBOC:FSIU:VJ47:WPTZ:HGT3:GJDN:WOSP:4MAT:3X4N:SSUY Docker Root Dir: /var/lib/docker Debug Mode (client): false Debug Mode (server): false Registry: https://index.docker.io/v1/ Labels: Experimental: false Insecure Registries: 127.0.0.0/8 Live Restore Enabled: false

WARNING: API is accessible on http://0.0.0.0:2376 without encryption. Access to the remote API is equivalent to root access on the host. Refer to the 'Docker daemon attack surface' section in the documentation for more information: https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface thomas@cubietruck:~$

[Update 19.05.2019] Maybe the error comes from different architeture? (https://stackoverflow.com/questions/52767983/docker-error-standard-init-linux-go185-exec-user-process-caused-exec-format-e)

Rory-Z commented 5 years ago

@FunThomas424242 What is oose/dockerjenkins?

recklessop commented 5 years ago

I'm seeing the same problem with orangizr when running it on a raspberrypi 3 B+ (havent figured out the issue yet though)

Nepomuk3000 commented 5 years ago

I'm facing the same problem running openhab/openhab on a raspberrypi 3 B....

Huluvu424242 commented 5 years ago

@FunThomas424242 What is oose/dockerjenkins?

This is a image derived from jenkins/jenkins see here for the tutorial. https://www.oose.de/blogpost/jenkins-in-docker-und-mit-docker-und-fuer-docker/ But the same error is shown when using the original image of jenkins:

thomas@cubietruck:~/git/dockerjenkins$ sudo docker run jenkins/jenkins:lts
standard_init_linux.go:211: exec user process caused "exec format error"
Rory-Z commented 5 years ago

@FunThomas424242 Thank you for your reply, but I can't see how this has anything to do with emqx.

Huluvu424242 commented 5 years ago

@FunThomas424242 Thank you for your reply, but I can't see how this has anything to do with emqx.

Oooh sorry - you are right. I have posted into the wrong group. Very sorry.

Rory-Z commented 5 years ago

@FunThomas424242 It doesn't matter :)

Rory-Z commented 5 years ago

@lowdef I can't see how this has anything to do with emqx.

Rory-Z commented 5 years ago

@lowdef I guess the timescale/timescaledb: latest - pg10 images does not support arm64 architecture, you need to find support arm64 architecture timescale

cgd1 commented 5 years ago

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

on Pi 3

Rory-Z commented 5 years ago

@cgd1 Which version of EMQX do you install and how do you install it? Currently we only support EMQX Edge Broker on raspberry pie

Kolbasyatin commented 4 years ago
docker run vimagick/mpd:latest
standard_init_linux.go:211: exec user process caused "exec format error"

Raspbian GNU/Linux 10 (buster)

Actually it seems like application build for amd64, but I try start it on arm.

jcharra commented 4 years ago

I just ran into the same error msg in a different context, and I found that using the arm32v7 organization's docker images resolved my problem.

Cf. this article: https://withblue.ink/2019/07/13/yes-you-can-run-docker-on-raspbian.html

and check out the docker images here: https://hub.docker.com/u/arm32v7

fallenangel3k commented 4 years ago

found possible solution ... my RPi was not updated ..

see here: "Docker und Raspbian auf einem Raspberry Pi - dahlen.org" https://www.dahlen.org/2019/06/docker-und-raspbian-auf-einem-raspberry-pi/

greetz 3NK1

Rory-Z commented 4 years ago

Hi, @fallenangel3k Thanks for your suggestions, we have provided a docker image that can run on the Raspberry Pi, you can get it through docker hub