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

Cannot run on Rpi3B+ aarch64 #95

Closed
121593 opened this issue Aug 15, 2019 · 8 comments
Closed

Cannot run on Rpi3B+ aarch64 #95

121593 opened this issue Aug 15, 2019 · 8 comments
Labels

Comments

@121593
Copy link

121593 commented Aug 15, 2019

Hello,

I cannot manage to run the project on a Raspberry 3 B+ loaded with RancherOs.

The problem may lie in the architecture resolution : AFAIK arm64v8 images should run on aarch64 labelled architecture [1], but docker says 'platform unsupported'.

I don't have deep docker knowledge, but a manifest may help resolution ?

uname -a :

Linux rancher 4.14.114-rancheros-v8 #1 SMP PREEMPT Tue May 14 07:57:18 UTC 2019 aarch64 GNU/Linux

partial docker info :

Server Version: 18.06.3-ce
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: active
NodeID: xx
Is Manager: true
ClusterID: xx
Managers: 1
Nodes: 1
Orchestration:
Task History Retention Limit: 5
Raft:
Snapshot Interval: 10000
Number of Old Snapshots to Retain: 0
Heartbeat Tick: 1
Election Tick: 10
Dispatcher:
Heartbeat Period: 5 seconds
CA Configuration:
Expiry Duration: 3 months
Force Rotate: 0
Autolock Managers: false
Root Rotation In Progress: false
Node Address: 192.168.1.26
Manager Addresses:
192.168.1.26:2377
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: a592beb5bc4c4092b1b1bac971afed27687340c5
init version: fec3683
Security Options:
seccomp
Profile: default
Kernel Version: 4.14.114-rancheros-v8
Operating System: RancherOS v1.5.3
OSType: linux
Architecture: aarch64
CPUs: 4
Total Memory: 919MiB
Name: rancher
ID: xxx
Docker Root Dir: /mnt/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: true
Live Restore Enabled: false

Thx !

@Joxit
Copy link
Owner

Joxit commented Aug 15, 2019

Which tag are you using ?

All tags are here : https://hub.docker.com/r/joxit/docker-registry-ui/tags

arm64v8 based images can't be used on aarch64 ? Did you ever used a nginx based docker image on your aarch64 Rpi ?

@121593
Copy link
Author

121593 commented Aug 16, 2019

I actually tried various tags in case I was misunderstanding their purpose, but was expecting arm64v8-static to work.

I managed to run nginx on the Rpi with an image from linuxserver/docker-nginx, which makes use of Docker manifest :

docker manifest inspect linuxserver/nginx

{
"schemaVersion": 2,
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"manifests": [
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 1579,
"digest": "sha256:14583e01e9210f0579c99db485ee13f9b423e92c2c2b86f76f7568731a0e380b",
"platform": {
"architecture": "amd64",
"os": "linux"
}
},
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 1579,
"digest": "sha256:fba6387e0a966386699f95bc6fdb2665fb2a65d2e356bc6f4f679777a3b1d242",
"platform": {
"architecture": "arm",
"os": "linux"
}
},
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 1579,
"digest": "sha256:6d5442233ba76cf6036545c084804107fb1f687fd18eaf0a3552c174de6d4734",
"platform": {
"architecture": "arm64",
"os": "linux",
"variant": "v8"
}
}
]
}

docker image inspect linuxserver/nginx [partial] :

[
{
"Id": "sha256:40fcb8c3f98e21c8f9308250baf52e9aae61c50762a79802667dd1f49ad73394",
"RepoTags": [
"linuxserver/nginx:latest"
],
.....
"Architecture": "arm64",
"Os": "linux",
"Size": 169931024,
"VirtualSize": 169931024,
....
}
]

@Joxit
Copy link
Owner

Joxit commented Aug 16, 2019

Ok, thank you for your response.
Can you now tell me if the image arm64v8/nginx works on your device ?

@121593
Copy link
Author

121593 commented Aug 16, 2019

Just tested, I does works

@Joxit
Copy link
Owner

Joxit commented Aug 16, 2019

Okay, that's a good news

joxit/docker-registry-ui:arm64v8-static is based on arm64v8/nginx, so this should work too.
I launched a new build for this tag, can you pull again my image and test if it works again ?

@Joxit Joxit added the bug label Aug 18, 2019
@Joxit
Copy link
Owner

Joxit commented Jan 15, 2020

No responses, mark as closed

@Joxit Joxit closed this as completed Jan 15, 2020
@Joxit
Copy link
Owner

Joxit commented Mar 14, 2020

Yes, this is normal, when you build a docker on a specific architecture, it will add your architecture as metadata in the image. My images are build by docker hub, and their servers are based on amd64 so it adds amd64 as architecture...
If you check the base image in Dockerfile, it's arm32v7/nginx and they are on the correct architecture.

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

No branches or pull requests

3 participants