use*_*674 157
就像最后的更新一样,这个功能现在在Docker中发布了(尽管自@imiric链接的pull请求以来API已经发生了变化).
只需使用像这样的命令
docker run -v /tmp:/root myImage
Run Code Online (Sandbox Code Playgroud)
为了/tmp从/root图像中的主机安装.
资料来源:https://docs.docker.com/engine/userguide/dockervolumes/
小智 11
*更新 - 请参阅下面的答案.这不再是正确的答案*
您无法按设计安装它们,因为Docker无法再保证可重复的执行环境.
但是你可以:
导入主机的根文件系统并从中创建新图像:
tar -C / -c . | docker import - entend/custombase
Run Code Online (Sandbox Code Playgroud)导入引导根文件系统,例如运行'debootstrap'的结果.(请注意,这是官方"基础"图像的创建方式,因此您最好只运行"docker pull base")
debootstrap precise ./bootstrap
tar -C ./bootstrap -c . | docker import - entend/ubuntubase
Run Code Online (Sandbox Code Playgroud)运行时,将本地目录的内容注入容器中.
IMAGE=base; SRC=./stuff; DST=/tmp/stuff; CMD="echo hello world"; tar -C $src -c . | docker run $IMAGE -i /bin/sh -c "tar -C $DST -x; $CMD"
Run Code Online (Sandbox Code Playgroud)
这将从$ IMAGE运行一个容器,将主机目录$ SRC复制到容器目录$ DST中,然后运行命令$ CMD.
最后一个示例通常用于在容器内运行构建命令之前插入源代码.
| 归档时间: |
|
| 查看次数: |
39182 次 |
| 最近记录: |