在Docker运行命令中使用--reset和register标记?

在Docker运行命令中使用--reset和register标记?,docker,qemu,Docker,Qemu,我是Docker和Qemu的新手。我正在考虑使用 我试图理解以下命令: docker run --rm --privileged multiarch/qemu-user-static:register --reset 为什么它们包括--reset,以及寄存器标记有什么意义 提前谢谢你 我猜--reset这意味着他们之前在中写的:删除所有已注册的binfmt_misc,因此通过查看register.sh可以看到以下内容: if [ "${1}" = "--reset" ]; then s

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

我试图理解以下命令:

docker run --rm --privileged multiarch/qemu-user-static:register --reset
为什么它们包括
--reset
,以及
寄存器
标记有什么意义

提前谢谢你

我猜
--reset
这意味着他们之前在中写的:删除所有已注册的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和
寄存器
标记本身相关的所有内容,我猜它们在使用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

谢谢你@Mostafa Hussein!