TareqAlqutami / rtmp-hls-server

a docker file to create a streaming server that supports RTMP, HLS and DASH content based on nginx and nginx-rtmp-module.
MIT License
402 stars 193 forks source link

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

Closed Kruemmelspalter closed 3 years ago

Kruemmelspalter commented 3 years ago

Using Docker Compose:

version: "3"

services:
  rtmp-server:
    image: alqutami/rtmp-hls
    ports:
      - "13080:80"
      - "1935:1935"

so it looks like some file doesn't have x (execute) permission running on Raspberry Pi 4 (ARM); Hypriot OS

Kruemmelspalter commented 3 years ago

Maybe it's because this is for amd64 not for arm(/v7) Also tried building on RasPi but no luck

petaren commented 3 years ago

@Kruemmelspalter I had the same issue but managed to get it to work. I'm using Balena for my rPi and by just specifying the image it pulled a compiled x86 version that didn't work. If I however downloaded the repo and built it from there, then it works.

  rtmp:
    build: ./rtmp
    # image: alqutami/rtmp-hls:latest-alpine
    ports:
      - "1935:1935"
      - "8080:8080"

Essentially, I went from the commented out line referring to the image, to the line specifying a folder to build from. When using Balena, it builds in their cloud and deploys to my rPi. Not sure how Hypriot OS works.

TareqAlqutami commented 3 years ago

Correct @petaren . The current builds are not for arm architecture. You will need to build the image from the source code. I tried it once on rPi3 and I managed to build and run the image just fine.

Kruemmelspalter commented 3 years ago

It should also work to write build: https://github.com/TareqAlqutami/rtmp-hls-server so you don't have to download the repo manually each time you want to build a new version