如何在Docker中挂载磁盘分区

2w2cym1i  于 2022-11-02  发布在  Linux
关注(0)|答案(1)|浏览(253)

我有下面的sd卡分区从sudo blkid

/dev/sdb1: PARTLABEL="uboot" PARTUUID="5e6c4af7-015f-46df-9426-d27fb38f1d87"
...
...
...
/dev/sdb8: UUID="5f38be2e-3d5d-4c42-8d66-8aa6edc3eede" BLOCK_SIZE="1024" TYPE="ext2" PARTLABEL="userdata" PARTUUID="dceeb110-7c3e-4973-b6ba-c60f8734c988"
/dev/sdb9: UUID="51e83a43-830f-48de-bcea-309a784ea35c" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="rootfs" PARTUUID="c58164a5-704a-4017-aeea-739a0941472f"

我尝试将/dev/sdb9挂载到一个Docker容器中,这样我就可以重新格式化它并使用它做其他事情。
但我不能附加它作为一个卷在码头集装箱。
这就是我所做的:

docker volume create --driver=local --opt type=ext4 --opt device=/dev/disk/by-uuid/51e83a43-830f-48de-bcea-309a784ea35c my-vol
docker run <image id> -v my-vol:/my-vol -it bash

然而,它想出了错误:failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "-v": executable file not found in $PATH: unknown.
你知道我怎么把/dev/sdb9装入一个docker容器吗?

jxct1oxe

jxct1oxe1#

你需要改变你的docker运行命令的顺序,使选项出现在图像之前。图像之后的所有内容都被认为是args,你需要在图像名称之前提供选项,如volume。从docker运行docs https://docs.docker.com/engine/reference/commandline/container_run/
docker container run [OPTIONS] IMAGE [COMMAND] [ARG...]
第一个

相关问题