Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ubuntu docker可以写入cd吗?_Ubuntu_Docker - Fatal编程技术网

Ubuntu docker可以写入cd吗?

Ubuntu docker可以写入cd吗?,ubuntu,docker,Ubuntu,Docker,docker可以写入cd吗?docker能执行吗 cdrecord dev=/dev/sr0 -checkdrive 从Ubuntu容器 Docker似乎能够使用父母的网络硬件,那么为什么不能使用父母的cdrom/DVD设备呢 更新: 这个问题是关于编程的,因为我有一些在Ubuntu虚拟机上运行的shell脚本,我想知道迁移到docker是否可行。我很抱歉没有一开始就指出这一点:)我想是的(还没有测试过),您可以从中找到一个例子: 如所述,--privileged标志是必需的(): 默认情况下

docker可以写入cd吗?docker能执行吗

cdrecord dev=/dev/sr0 -checkdrive
从Ubuntu容器

Docker似乎能够使用父母的网络硬件,那么为什么不能使用父母的cdrom/DVD设备呢

更新:

这个问题是关于编程的,因为我有一些在Ubuntu虚拟机上运行的shell脚本,我想知道迁移到docker是否可行。我很抱歉没有一开始就指出这一点:)

我想是的(还没有测试过),您可以从中找到一个例子:

如所述,
--privileged
标志是必需的():

默认情况下,大多数潜在危险的内核功能都会被删除;包括
cap\u sys\u admin
(装载文件系统需要它)。但是,
--privileged
标志将允许它运行

--privileged
标志为容器提供了所有功能,它还解除了设备
cgroup
控制器实施的所有限制。
换句话说,容器可以执行主机可以执行的几乎所有操作。
此标志的存在是为了允许特殊用例,例如在Docker中运行Docker


如前所述,还有
--设备
选项:

通常需要将设备直接暴露在容器中。
--device
选项启用该选项。
例如,可以将特定的块存储设备或循环设备或音频设备添加到其他非特权容器(不带
--privileged
标志)中,并让应用程序直接访问它

默认情况下,容器将能够读取、写入和
mknod
这些设备。可以使用第三个
:rwm
选项集覆盖每个
--设备
标志

注意
--设备
不能与临时设备一起安全使用。不应使用
--device
将可能被删除的阻止设备添加到不受信任的容器中

如中所示,某些设备可以更改其节点名称。看

如果使用
lxc
后端启动Docker守护程序,则应该能够使用
--lxc conf=lxc.cgroup.devices.allow=c 189:*rwm
允许容器访问该组的所有设备,然后使用
卷-v/dev/bus/usb/:/dev/bus/usb/
访问所有usb设备


--privileged
?很抱歉,我不理解您的评论。你是说,“是,如果您将
--privileged
指定为cdrecord命令的选项,docker可以写入CD?请告诉我,我是docker noob,有特定的用例。请在您使用的任何图像上尝试
docker run--privileged
。我会尝试的。非常感谢。run命令还有一个
--device
标志:
--device=[]将主机设备添加到容器中
,该容器应该比文件更好使用volume@VincentDemeester说得好。我已将其包含在答案中,以提高可见性。
docker run \
-t --rm \
--privileged \
-v $XSOCK:$XSOCK \
-v /etc/localtime:/etc/localtime:ro \
-v /dev/sr0:/dev/sr0 \
-v /dev/cdrom:/dev/cdrom \
-v $RIPS:/rips \
--name handbrake marvambass/handbrake &