我已经能够成功使用以下卷在Docker容器之间共享文件夹
docker run -v /host/path:/container/path ...
但是我的问题是,这与VOLUME
在Dockerfile中使用命令之间有什么区别
VOLUME /path
我正在使用带有VOLUME
命令的图像,并且想知道如何与主机共享它。我已经使用-v
上面的命令完成了此操作,但我不知道是否同时需要-v
和和VOLUME
。
该VOLUME
命令将在您的容器中安装一个目录,并将在该目录中创建或编辑的所有文件存储 在容器文件结构外部的 主机磁盘上,绕过联合文件系统。
这个想法是,您的卷可以在您的docker容器之间共享,并且只要存在引用它们的容器(正在运行或已停止),它们就会一直存在。
--volumes-from
运行容器时,可以使用命令让其他容器安装现有卷(在容器之间有效地共享它们)。
VOLUME
和之间的根本区别-v
是:-v
将来自操作系统的现有文件安装在Docker容器中,VOLUME
并将在主机上 创建一个新的空卷
,并将其安装在容器中。
例:
VOLUME /var/lib/mysql
。some-volume
然后,
docker run --volumes-from some-volume docker-image-name:tag
some-volume
装入该卷/var/lib/mysql
注意:使用--volumes-from
会将卷安装在卷位置上存在的任何位置上。即,如果您有东西/var/lib/mysql
,它将被卷的内容替换。
如何在hostgator共享主机上安装laravel php框架PHP版本5.2-AddType application/x-httpd-php53.PHP in.htaccess文件 我的问题:无法使用SSH安装composer:$curl-sShttps://getcomposer.org/installer |php获取错误:缺少phar扩展。请在不禁用phar的情况下安装或重新编译php
我在 Azure 虚拟机上安装 Docker 时遇到错误。 m/c 配置:Azure vm、Windows 10 企业版、英特尔 2.4 GHz、7 GB RAM、64 位操作系统、基于 x64 的处理器。我浏览了几个博客,他们要求我在 azure vm 上启用嵌套虚拟化,如下所示。 设置VMProcessor-VMName MobyLinuxVM-ExposeVirtualizationExte
问题内容: 我有这些东西: 文件http://api.odtu.lu/composer.phar http://api.odtu.lu/phpinfo.php FTP访问 面板 FreeBSD上的Cron职位 PHP,Perl,CGI-BIN,Python,Curl。 如何安装Composer?(我的目的是安装Restler) 编辑:我没有SSH访问。 问题答案: 它取决于主机,但是您可能根本无法
问题内容: Docker对我来说在Mac上运行良好,但是我必须在VirtualBox(或Parallels或VMWare Fusion)中运行docker主机,因为Mac的内核不支持docker。 所以我尝试在Ubuntu桌面上设置应用程序和docker-compose- 本机地,其中docker客户端和docker主机都物理上运行在同一系统上。这可行,但是我正在运行的Docker容器无法写入已安
问题内容: 我在一台Macbook Pro笔记本电脑上运行 docker-machine(0.5.0) 和 docker-compose(1.5.0) 以启动我的容器。 这意味着我正在使用docker-machine创建我的virtualbox boot2docker驱动的HOST计算机,它将运行我的docker守护程序并托管我的所有容器。 我认为我缺少关于HOSTS和VOLUME概念的关键内容,