在Docker run命令中使用--reset和register标签?

时间:2019-03-12 06:12:47

标签: docker qemu

我是Docker和Qemu的新手。我正在考虑使用this Qemu

我正在尝试理解以下命令:

docker run --rm --privileged multiarch/qemu-user-static:register --reset

为什么它们包含--resetregister标签有什么意义?

提前谢谢!

1 个答案:

答案 0 :(得分:1)

我猜--reset意味着他们在ReadMe中写了什么:删除之前所有已注册的binfmt_misc ,因此通过查看register.sh可以看到以下内容:

if [ "${1}" = "--reset" ]; then
    shift
    find /proc/sys/fs/binfmt_misc -type f -name 'qemu-*' -exec sh -c 'echo -1 > {}' \;
fi

因此,当您传递--reset时,它将禁用与qemu和register标签本身相关的所有内容,我猜他们在使用Qemu之前会先启用binfmt_misc,因为如果找不到该容器将失败:

if [ ! -d /proc/sys/fs/binfmt_misc ]; then
    echo "No binfmt support in the kernel."
    echo "  Try: '/sbin/modprobe binfmt_misc' from the host"
    exit 1
fi