Creating base image from archlinux - script not working

Hi

I really don’t know if this is the right place to ask but I don’t know where else I should do it - if you know a better place (maybe stackoverflow?) feel free to tell me.


I’m trying to build my own docker base image from an ArchLinux (64bit, latest release (2014.11.01), all updates done via pacman -Syu).
I’m using is the official script which I found here: https://registry.hub.docker.com/u/base/archlinux/ --> https://github.com/docker/docker/blob/master/contrib/mkimage-arch.sh .

I’m executing this script (together with the mkimage-arch-pacman.conf) from a “real” ArchLinux (VirtualBox) as root.

I always get the error:

.....
==> Updating trust database...
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0 valid: 1 signed: 5 trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1 valid: 5 signed: 61 trust: 0-, 0q, 0n, 5m, 0f, 0u
gpg: depth: 2 valid: 60 signed: 4 trust: 60-, 0q, 0n, 0m, 0f, 0u
gpg: next trustdb check due at 2015-03-31
umount: /var/tmp/rootfs-archlinux-fORD04yCL0/dev: target is busy
(In some cases useful info about processes that
use the device is found by lsof(8) or fuser(1).)
umount: /var/tmp/rootfs-archlinux-fORD04yCL0: target is busy
(In some cases useful info about processes that
use the device is found by lsof(8) or fuser(1).)
mount: udev is already mounted or /var/tmp/rootfs-archlinux-fORD04yCL0/dev busy
udev is already mounted on /var/tmp/rootfs-archlinux-fORD04yCL0/dev
udev is already mounted on /var/tmp/rootfs-archlinux-fORD04yCL0/dev
==> ERROR: failed to setup API filesystems in chroot /var/tmp/rootfs-archlinux-fORD04yCL0 

It looks like the error happens in line 39 in the mkimage-arch.sh script:

arch-chroot $ROOTFS /bin/sh -c "haveged -w 1024; pacman-key --init; pkill haveged; pacman -Rs --noconfirm haveged; pacman-key --populate archlinux"

I really have no idea what I should/could do about this. I tried googling it, I tried asking in archlinux and docker IRC but nobody could help me.
I’m not a linux guru so I have no idea what could be wrong in this script, as far as I can see it looks fine to me.
Also I almost can’t believe, that the official script contains an error.

Maybe my ArchLinux needs to be set up in a special way or something like that?

Thanks in advance for any help!

Heya,

that image is built by a third party - if you scroll down on https://registry.hub.docker.com/u/base/archlinux/ to see the Source Project page link in the side bar, it goes to https://github.com/tmc/dockerfiles

I’d raise an issue there and see if they know what’s going on.

At the same time, it may be worth raising an issue on the docker github repo about the failure of mkimage-arch.sh - perhaps @tianon can point us to the right person to look into it.

Sven

Thank you for the infos @sven .

I just created an issue there.

Would be nice if someone could verifiy this error though…then I could be sure it’s not just me.

Greetings

I’ve been having this issue lately too–you’re not alone!