minideb
minideb copied to clipboard
Unable to build Minideb for ARM64 foreign architecture
Description Unable to build Minideb for ARM64 foreign architecture.
Maybe this is a documentation issue? Can I ARM64 Minideb be build inside an ARM64 Bullseye Docker image?
Steps to reproduce the issue:
- git clone https://github.com/bitnami/minideb.git
- apt-get install build-essential
- qemu_build bullseye arm64
Describe the results you received:
$ ./qemu_build bullseye arm64
Installing QEMU and required packages...
Hit:1 http://deb.debian.org/debian bullseye InRelease
Hit:2 http://security.debian.org/debian-security bullseye-security InRelease
Hit:3 http://deb.debian.org/debian bullseye-updates InRelease
Reading package lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'qemu-system-arm' instead of 'qemu-kvm'
Package libvirt-bin is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'libvirt-bin' has no installation candidate
make: *** [Makefile:17: .installed-qemu] Error 100
Describe the results you expected: An ARM64 Minideb foreign architecture Docker image wold be created.
Version
- Output of
docker version
:
$ docker version
Client:
Cloud integration: v1.0.24
Version: 20.10.17
API version: 1.41
Go version: go1.17.11
Git commit: 100c701
Built: Mon Jun 6 23:04:45 2022
OS/Arch: darwin/arm64
Context: default
Experimental: true
Server: Docker Desktop 4.10.1 (82475)
Engine:
Version: 20.10.17
API version: 1.41 (minimum version 1.12)
Go version: go1.17.11
Git commit: a89b842
Built: Mon Jun 6 23:01:01 2022
OS/Arch: linux/arm64
Experimental: false
containerd:
Version: 1.6.6
GitCommit: 10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
runc:
Version: 1.1.2
GitCommit: v1.1.2-0-ga916309
docker-init:
Version: 0.19.0
GitCommit: de40ad0
- Output of
docker info
:
$ docker info
Client:
Context: default
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc., v0.8.2)
compose: Docker Compose (Docker Inc., v2.6.1)
extension: Manages Docker extensions (Docker Inc., v0.2.7)
sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc., 0.6.0)
scan: Docker Scan (Docker Inc., v0.17.0)
Server:
Containers: 2
Running: 0
Paused: 0
Stopped: 2
Images: 3
Server Version: 20.10.17
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Cgroup Version: 2
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
runc version: v1.1.2-0-ga916309
init version: de40ad0
Security Options:
seccomp
Profile: default
cgroupns
Kernel Version: 5.10.104-linuxkit
Operating System: Docker Desktop
OSType: linux
Architecture: aarch64
CPUs: 4
Total Memory: 7.765GiB
Name: docker-desktop
ID: L4PG:GDQK:ZHVF:36LO:5XO5:GSFS:WYKV:CZED:QFRI:ZXI2:WSMU:NF7W
Docker Root Dir: /var/lib/docker
Debug Mode: false
HTTP Proxy: http.docker.internal:3128
HTTPS Proxy: http.docker.internal:3128
No Proxy: hubproxy.docker.internal
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
hubproxy.docker.internal:5000
127.0.0.0/8
Live Restore Enabled: false
- Output of
docker-compose version
(if applicable):
$ docker-compose version
Docker Compose version v2.6.1
Additional environment details (AWS, VirtualBox, Docker for MAC, physical, etc.):
$ sw_vers
ProductName: macOS
ProductVersion: 12.4
BuildVersion: 21F79
Maybe a work around?
https://lists.debian.org/debian-user/2016/11/msg00518.html
The package was split into two parts:
libvirt-daemon-system
libvirt-clients
In most cases you probably want both of them at the same time.
So instead of libvirt-bin use libvirt-daemon-system libvirt-clients:
https://github.com/bitnami/minideb/pull/130 got me past the libvirt-bin problem but now this issue (I do not know if this is related or a different issue)
# ./qemu_build bullseye arm64
make: '.installed-qemu' is up to date.
qemu-img: warning: Deprecated use of backing file without explicit backing format (detected format of raw)
Formatting 'build/bullseye/arm64/instance.qcow2', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=512 backing_file=../../../.kvm-images/arm64/buster-server-cloudimg-arm64.qcow2 lazy_refcounts=off refcount_bits=16
Image resized.
.PXE-E18: Server response timeout.
UEFI Interactive Shell v2.1
EDK II
UEFI v2.60 (EDK II, 0x00010000)
Mapping table
BLK3: Alias(s):
VenHw(F9B94AE2-8BA6-409B-9D56-B9B417F53CB3)
BLK2: Alias(s):
VenHw(8047DB4B-7E9C-4C0C-8EBC-DFBBAACACE8F)
BLK0: Alias(s):
PciRoot(0x0)/Pci(0x2,0x0)
BLK1: Alias(s):
PciRoot(0x0)/Pci(0x3,0x0)
Press ESC in 1 seconds to skip startup.nsh or any other key to continue.
Shell> kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
Shutting down QEMU...
kex_exchange_identification: read: Connection reset by peer
Connection reset by 127.0.0.1 port 5555
qemu-system-aarch64: terminating on signal 2
Hi, From the docker info output, are you running this in an ARM machine ?
...
Kernel Version: 5.10.104-linuxkit
Operating System: Docker Desktop
OSType: linux
Architecture: aarch64
...
Yes.
I need to build it on an amd64 architecture?
On Jul 11, 2022, at 3:42 AM, Rafael Ríos Saavedra @.@.>> wrote:
From the docker info output, are you running this in an ARM machine ?
... Kernel Version: 5.10.104-linuxkit Operating System: Docker Desktop OSType: linux Architecture: aarch64 ...
-- Bob Tanner @.@.>> | Phone : (952)943-8700 https://keybase.io/basictheprogram | http://www.real-time.com Key fingerprint = F785 DDFC CF94 7CE8 AA87 3A9D 3895 26F1 0DDB E378
As you can see this run qemu, I not sure if you can run those qemu commands on ARM64 without issues. Could you give it a try on a AMD64 machine ?