测试环境用下面这个 docker-compose.yml 即可

```yaml
services:
  ubuntu:
    image: ubuntu:22.04
    volumes:
      # - volumeetc:/etc
      - ./data/etc:/etc
    command: tail -f /dev/null

volumes:
  volumeetc:
```

我的问题是:

如果使用 `数据卷 volumeetc` 挂载到 `容器 /etc` 目录, 启动容器后, 这个数据卷里的数据是完整的 etc 目录内的数据;

如果使用宿主机目录比如 ./data/etc 挂载到容器内, 宿主机 ./data/etc 这个目录下的数据不完整, 只有 hostname, hosts, resolv.conf 这三个文件;

我在 linux, mac, windows 都测试过, 都是这个行为;

调整过宿主机目录相关权限, 尽量和容器内保持一致, 也不行

我的问题是 为什么会有这种差异?

我个人推测跟容器创建的初始化流程有关, 但是没找到什么文档

希望大佬指条路
举报· 30 次点击
登录 注册 站外分享
1 条回复  
julyclyde 小成 2024-9-10 14:17:59
从你这个 command 的写法来看……你可能没掌握容器的正确用法

(我这个回答和 volume 无关)
返回顶部