我在制作中使用的脚本基本上是这样的:
make.ext4 ... /dev/sdb1
mount /dev/sdb1 /folder
and so on
我有一个Docker环境,我在其中模拟我的生产环境。现在,我需要的是在env上使用相同脚本的可能性。要做到这一点,我需要在Docker中有一个/ dev / sdb1设备,并以某种方式在其上附加一个卷,这样当我运行上面的命令时,我的卷被附加到/文件夹。
我知道这可以通过以下方式轻松完成:
docker run -t <tag> -v <my volume>:/folder -it /bin/bash
但是这样,Docker容器中的东西有点不同,我需要修改我的脚本(在我的情况下,我有几个脚本需要更改)。
有没有办法做类似的事情:
docker run -t <tag> -v <my volume>:/dev/sdb1 -it /bin/bash
所以当我在Docker中时:
mount /dev/sdb1 /folder
我将外部卷安装到容器中的/文件夹?
答案 0 :(得分:1)
您是否尝试使用具有安装权限的docker运行?
也许如果您启动docker run --privileged
或docker run --cap-add=SYS_ADMIN
,您可以从docker访问/ dev / sdb1,因此可以执行mount /dev/sdb1/
有关泊坞窗容器权限的详细信息,请参阅:Docker Documentation privileged mode and capabilities