docker volumes挂载的目录,宿主机的空目录情况下会清空容器内的文件,这要怎么弄呢?

version: "3"

services:

  wp-test:
    image: wordpress
    container_name: wp-test
    ports:
      - 8355:80
    restart: always
    privileged: true
    volumes:
      - /data/wordpress/wp-test/extensions/no-debug-non-zts-20180731:/usr/local/lib/php/extensions/no-debug-non-zts-20180731:ro

如上所示,配置了一个映射地址,宿主机目录为/data/wordpress/wp-test/extensions/no-debug-non-zts-20180731,容器目录为/usr/local/lib/php/extensions/no-debug-non-zts-20180731, 本来启动容器后,容器内的/usr/local/lib/php/extensions/no-debug-non-zts-20180731目录下会生成一些文件,但现在加了volumes映射后,容器内的该目录就变成空的,请问下是什么问题?

阅读 7.1k
1 个回答

容器里的文件只是不可见了,这个形为与 Linux mount 命令的行为是一致的。你可先去掉 volumes, 把容器的相应目录下的文件通过 docker copy 拷贝到宿主机,再挂载 volumes 就可以了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题