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

Support for ARM64 in Dockerfile #15

Open
kkazakov opened this issue Nov 18, 2023 · 12 comments · Fixed by #16
Open

Support for ARM64 in Dockerfile #15

kkazakov opened this issue Nov 18, 2023 · 12 comments · Fixed by #16
Assignees

Comments

@kkazakov
Copy link

Please, add more architectures, not only amd64.

@lllllllillllllillll lllllllillllllillll self-assigned this Nov 18, 2023
@lllllllillllllillll
Copy link
Owner

I'm looking into it.

@lllllllillllllillll
Copy link
Owner

@kkazakov

I've updated v0.06-dev to be multi-platform, but it's untested:


services:
  dweebui:
    container_name: DweebUI
    image: lllllllillllllillll/dweebui:v0.06-dev
    restart: unless-stopped
    ports:
      - 8000:8000
    depends_on:
      - cache
    links:
      - cache
    volumes:
      - dweebui:/app
      - caddy:/app/caddyfiles
      - /var/run/docker.sock:/var/run/docker.sock
  cache:
    container_name: DweebCache
    image: redis:6.2-alpine
    restart: always
    command: redis-server --save 20 1 --loglevel warning --requirepass eYVX7EwVmmxKPCDmwMtyKVge8oLd2t81
    volumes: 
      - cache:/data
  proxy:
    container_name: DweebProxy
    image: caddy:2.4.5-alpine
    depends_on:
      - dweebui
    restart: unless-stopped
    network_mode: host
    volumes:
      - caddy:/data
      - caddy:/config
      - caddy:/etc/caddy
volumes:
  dweebui:
  cache:
  caddy:

@lllllllillllllillll
Copy link
Owner

Updated v0.06-dev:

amd64
arm64 (v8)
arm64/v7
arm64/v6

v0 06-dev

@gaby
Copy link
Contributor

gaby commented Nov 19, 2023

@lllllllillllllillll I'm going to make a PR to add support for building multi-platform images using Github Actions.

@lllllllillllllillll
Copy link
Owner

lllllllillllllillll commented Nov 19, 2023

@kkazakov

Pasting your last comment in here and re-opening issue.

"I'm getting multitude of errors and the container keeps restarting:"

_Error: Cannot find module 'express'
Require stack:

  • /app/app.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1082:15)
    at Module._load (node:internal/modules/cjs/loader:928:27)
    at Module.require (node:internal/modules/cjs/loader:1149:19)
    at require (node:internal/modules/helpers:121:18)
    at Object. (/app/app.js:1:17)
    at Module._compile (node:internal/modules/cjs/loader:1267:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1321:10)
    at Module.load (node:internal/modules/cjs/loader:1125:32)
    at Module.load (node:internal/modules/cjs/loader:965:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:83:12) {
    code: 'MODULE_NOT_FOUND',
    requireStack: [ '/app/app.js' ]
    }

@lllllllillllllillll
Copy link
Owner

@kkazakov

I've updated the v0.06-dev image again.

Could you tell me what you get when you run this command on your Orange Pi
docker info --format '{{ .OSType }}/{{ .Architecture }}'

@kkazakov
Copy link
Author

kkazakov commented Nov 23, 2023

It's actually on Raspberry PI 2 the latest issue.

docker info --format '{{ .OSType }}/{{ .Architecture }}' returns

linux/armv7l

and currently it's producing

wasp@DietPi:~/docker-scripts/dweebui$ docker-compose up --remove-orphans --force-recreate -d
[+] Running 0/2
⠹ dweebui Pulling 3.1s
⠹ cache Pulling 3.1s
no matching manifest for linux/arm/v7 in the manifest list entries

@steveiliop56
Copy link
Contributor

I don't think you should add armv7 support. It's no longer used.

@lllllllillllllillll
Copy link
Owner

It seems like there are up-to-date node images that support arm64, amd64, armv6, and armv7:
20-alpine

I think the node image supports armv7, but that one of the modules I'm using does not.

@steveiliop56
Copy link
Contributor

There is no point in doing this. Everyone running docker on pis is using 64bit os. I would recommend only supporting arm64 and x86

@lllllllillllllillll
Copy link
Owner

Not specifically for the Raspberry Pis, but for broader device support in general.
It's not something I'm going to put a lot of energy into at the moment, but I think I'll eventually need to support more architectures if I want to be able to offer it as an alternative to Portainer.
I'd really like to get this running on my 1st gen Raspberry Pi as well.

@steveiliop56
Copy link
Contributor

Alright alright no problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants