繁体   English   中英

无法 `cd` 进入 docker 在已安装卷中创建的目录

[英]Cannot `cd` into directory made by docker in a mounted volume

我正在运行以下 docker 命令:

docker run -v /data/polygon/mainnet:/data ghcr.io/streamingfast/firehose-ethereum:v1.2.2-polygon-v0.3.2-fh2.1 start reader-node --common-chain-id=137 --common-network-id=137 --data-dir=/data <other args>"

请注意,我正在将/data/polygon/mai.net/data并且/data被用作data-dir arg。

当这个容器启动时,它会在容器中的/data中创建文件和文件夹,我可以从主机上看到这些文件和文件夹:

12:11PM /data/polygon/mainnet
 ❯❯❯ ls
reader  storage

但是,当我尝试cd进入其中一个目录时,我被拒绝了:

12:15PM /data/polygon/mainnet/reader  ✘ 1
 ❯❯❯ cd /data/polygon/mainnet/reader/data
cd: permission denied: /data/polygon/mainnet/reader/data
12:15PM /data/polygon/mainnet/reader  ✘ 1
 ❯❯❯ sudo !!
12:15PM /data/polygon/mainnet/reader  ✘ 1
 ❯❯❯ sudo cd /data/polygon/mainnet/reader/data
sudo: cd: command not found

但是,我可以cd进入 `reader 目录没问题:

12:16PM /home/ubuntu
 ❮❮❮ cd /data/polygon/mainnet/reader
12:16PM /data/polygon/mainnet/reader
 ❯❯❯ ls
data  work

如果我列出reader下的文件夹,我会看到以下内容

12:17PM /data/polygon/mainnet/reader
 ❯❯❯ ls -la
total 0
drwxr-xr-x 4 root 42 Jan 11 12:11 .
drwxr-xr-x 4 root 47 Jan 11 12:11 ..
drwx------ 4 root 33 Jan 11 12:11 data
drwxr-xr-x 3 root 41 Jan 11 12:11 work

这很奇怪,因为reader目录归root所有,就像data目录一样。

为什么我cd进入data目录?

Ninja 编辑:原来运行chown -R ubuntu data解决了这个问题。 我仍然想知道为什么我不能cddata但我可以cdreader

感谢@KamilCuk 让我查看data目录的特定权限。

看起来只有data目录的所有者才有权读取它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM