Nginx-proxy-manager: standard_init_linux.go:211: exec user process caused "exec format error"

Created on 20 Feb 2020  ·  17Comments  ·  Source: jc21/nginx-proxy-manager

image: jc21/nginx-proxy-manager:latest

Describe the bug
npm app doesn't boot, with the logs showing:
standard_init_linux.go:211: exec user process caused "exec format error"

To Reproduce
docker-compose.yaml (previously worked fine until recent update)

version: "3.5"

volumes:
  data:
    driver: local
    driver_opts:
      type: nfs4
      o: addr=10.10.10.100,rw,noatime,rsize=8192,wsize=8192,tcp,timeo=14
      device: ":/volume1/Config/npm/data"
  letsencrypt:
    driver: local
    driver_opts:
      type: nfs4
      o: addr=10.10.10.100,rw,noatime,rsize=8192,wsize=8192,tcp,timeo=14
      device: ":/volume1/Config/npm/letsencrypt"

services:
  app:
    image: jc21/nginx-proxy-manager:latest
    restart: always
    ports:
      - "80:80"
      - "443:443"
      - "81:81"
    volumes:
      # Make sure this config.json file exists
      - /mnt/config/npm/config.json:/app/config/production.json
      - data:/data
      - letsencrypt:/etc/letsencrypt
    depends_on:
      - db
  db:
    image: yobasystems/alpine-mariadb:latest
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: "npm"
      MYSQL_DATABASE: "npm"
      MYSQL_USER: "npm"
      MYSQL_PASSWORD: "password"
    volumes:
      # Does not work on an NFS volume
      - /home/xxx/npm/data/mysql:/var/lib/mysql

Expected behavior
npm app boots normally

Operating System
Hypriot docker image on Pi4

bug

Most helpful comment

Nope buildx was working as expected. The real problem is s6-overlay, I've mistakenly been using amd64 binaries for it across all architectures. Rookie move.

All 17 comments

This seems to be because of the latest multi arch build, perhaps not using the right one for my Pi 4.

I don’t have a pi 4 yet, but I’ll take a look at it tomorrow

Thanks. Pi 4 will be an arm7 build. Can I manually specify somehow?

I've tried latest-arm7l as per tags here:

https://hub.docker.com/r/jc21/nginx-proxy-manager

This doesn't seem to work, no valid dockerfile.

Could you run ‘uname -a’ in you terminal and paste the output. Should tell me the arch and whether it’s 32 or 64 bit

Linux gliesedocker 4.19.66-v7l+ #1253 SMP Thu Aug 15 12:02:08 BST 2019 armv7l GNU/Linux

I suspect you've fixed something as i've just retried the :latest-armv7l tag and it's now working. :)

I thought pi4 was armv8/arm64. A quick look at Hypriot doesn’t seem to offer different versions for Pi 2/3/4

By the way, that latest-armv7l tag is not version NPM 2.1.0, its the previous docker manifest version

Ahh I see. I’ll await updates before trying the latest tag again. 👍🏼

Looks like the docker buildx isn't building for the correct architectures. Still looking in to it.

Nope buildx was working as expected. The real problem is s6-overlay, I've mistakenly been using amd64 binaries for it across all architectures. Rookie move.

Ah appreciate it, thanks for looking into this promptly.

All done, pull either latest, 2 or 2.1.1 docker image tag. Tested with arm64 and rpi3 w/ hypriot

Working fine again, thank you!

Hi,

I'm geting a smilar error with rpi4 64 bit (using the official OS 32 bit).

uname -a
Linux raspberrypi 4.19.118-v7l+ #1311 SMP Mon Apr 27 14:26:42 BST 2020 armv7l GNU/Linux

This are the images that I'm using:
app:
image: jc21/nginx-proxy-manager:latest

db:
image: jc21/mariadb-aria:latest

Update: I'm able to run succesfully it by using the following db image:
db:
image: yobasystems/alpine-mariadb:latest

Was this page helpful?
0 / 5 - 0 ratings

Related issues

raidoo9 picture raidoo9  ·  6Comments

Kranzy picture Kranzy  ·  7Comments

jiatao99 picture jiatao99  ·  6Comments

Trrw picture Trrw  ·  3Comments

spoolr picture spoolr  ·  5Comments