Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No suitable images for architectures other than amd64 e.g. for RaspberryPi #228

Open
Aaper opened this issue Jun 29, 2021 · 3 comments · May be fixed by #389
Open

No suitable images for architectures other than amd64 e.g. for RaspberryPi #228

Aaper opened this issue Jun 29, 2021 · 3 comments · May be fixed by #389
Labels
P2 We need to fix it (backlog)

Comments

@Aaper
Copy link

Aaper commented Jun 29, 2021

The Docs mention that almond-server should run on RaspberryPi 3 + 4 but there is not suitable Image in the Dockerhub for architectures other than amd64 as you can see under the tags section.

So executing the documented run command on a RaspberryPi 3 running Raspian Buster (armhf)
podman run --name almond -p 3000:3000 stanfordoval/almond-server:latest-portable

will lead to the following error
{"msg":"exec container process `/usr/bin/npm`: Exec format error","level":"error","time":"2021-06-29T16:56:28.000196786Z"}

This non-matching architecure errors are also mentioned in the Podman Docs.

Could you please provide images for other architectures aswell?

@techkujaku
Copy link

Yeap, can't get it to run on my pi4 via portainer. the error is related to wrong architecture

standard_init_linux.go:228: exec user process caused: exec format error

@nrser nrser added the question label Aug 4, 2021
@nrser nrser added P2 We need to fix it (backlog) and removed question labels Aug 6, 2021
@kratosok
Copy link

So I just found out about this project and have been very excitedly researching it.. I saw the build didn't support rpi in docker hub..

I was however able to build an image for docker/podman for arm64.

Step 1) git clone https://github.com/stanford-oval/almond-server.git
Step 2) cd almond-server
Step 3) docker build -t almond-server .
OR if you are using podman
podman build -t almond-server .

Why this works: building the container image yourself lets your docker/podman engine try to build from the base image that works for your architecture.

Downside- I have built the container successfully, but I can't get it to run.. but I think this is related to some pulse issue I'm going to try to work out since I run RPI headless with a server distro and no pulse.

current runtime error:

> almond-server@2.0.1 start /opt/almond
> node dist/main.js

Frontend initialized in development mode
Failed to load translations: The expression evaluated to a falsy value:

  assert_1.default(fs.existsSync(modir))

Snowboy initialized
Uncaught exception: Not available
Error: Not available
    at new Context (/opt/almond/node_modules/canberra/index.js:102:24)
    at new SoundEffectsApi (/opt/almond/dist/service/platform/index.js:201:21)
    at ServerPlatform._ensurePulseAudio (/opt/almond/dist/service/platform/index.js:371:38)
    at ServerPlatform.hasCapability (/opt/almond/dist/service/platform/index.js:417:22)
    at new AssistantEngine (/opt/almond/node_modules/genie-toolkit/dist/lib/engine/index.js:96:22)
    at init (/opt/almond/dist/main.js:62:15)
    at main (/opt/almond/dist/main.js:147:19)
Cleaning up

@gcampax
Copy link
Contributor

gcampax commented Aug 23, 2021

The error indicates that PulseAudio is not available in the container. You need to mount it from outside, using the podman command in the README.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P2 We need to fix it (backlog)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants