我正在看这个例子
docker run --rm --volumes-from myredis -v $(pwd)/backup:/backup debian cp /data/dump.rdb /backup/
来自使用Docker书。
为什么我们需要--rm标志?
为什么我们有--volumes-from?
答案 0 :(得分:2)
--rm
标志告诉Docker Engine一旦退出就移除它。如果没有此标志,则需要在停止后手动删除容器。
--volumes-from
标志从引用的容器中安装所有已定义的卷,它确保两个容器安装相同的卷。
答案 1 :(得分:2)
这里的想法是
myredis
的redis容器,其中有一些volumes
用于持久存储(您要备份)。debian
容器,该容器会将备份保存到your_current_dir/backup
并被删除。docker run --rm ... debian
运行容器并在退出后将其删除--volumes-from myredis
这样debian
容器可以访问数据库-v $(pwd)/backup:/backup
此第二个卷用于将备份放在当前目录$(pwd)/backup
。如果没有使用,备份将仅复制到/backup
(在容器内),然后与容器一起删除。这样备份就会持续存在。cp /data/dump.rdb /backup/
复制实际文件