Dockerfile:在Dockerfile建设过程中创建和构建
问题描述:
我想建立并安装一个定制的磁盘映像时挂载的磁盘映像:Dockerfile:在Dockerfile建设过程中创建和构建
FROM ubuntu:16.04
RUN dd if=/dev/zero of=foo.img count=500 bs=1M
RUN mkfs.ext4 foo.img
RUN mkdir -p /media/ext4disk
RUN mount -t ext4 foo.img /media/ext4disk
运行docker build
,我得到的最后一个命令以下错误信息: mount failed: Unknown error -1
。
有什么办法可以实现我想要做的事情吗?
答
您需要docker run
确实具有的--privileged
或--cap-add
功能,但docker build
不支持该功能。因此,截至目前的Docker版本,you can't。
见this评论:
泊坞窗的用户的数量显著要--cap加或--privileged在构建命令,模仿还有什么在运行命令的能力。
这就是为什么这张票已经开放3年了,即使维护者没有兴趣在这个特定的情况下给用户提供他们想要的东西,人们仍然不停地打开。
作为替代方案,你可以移动RUN
命令时,容器启动时(并添加提到--privileged
标志,或--cap-add=SYS_ADMIN
)
+0
多么有礼貌......你对这些码头开发人员真的很高兴。 – peterh
我不知道应该运行的脚本,如果这甚至有可能在一个容器。您可以尝试在特权模式“docker run --privileged”下运行容器。 – Grimmy