私のホストコンピュータには次のディレクトリがあります。
drwxr-xr-x@ - mnj mnj 15 Dec 21:02 -- mocks/
それは私(mnj)のものであり、誰もが少なくともそれに対する読み取りアクセス権を持っている必要があります。次のdocker-composeサービスに基づいてPodmanコンテナ(sudoなし)を実行しています。
mountebank:
image: jkris/mountebank:latest
hostname: mountebank
volumes:
- ./mocks/:/mountebank
command: >
--configfile=/mountebank/imposters.json.ejs
--allowInjection
ディレクトリはコンテナ内にmocks
表示する必要があります。/mountebank
Mountebankは次のエラーで失敗します。
エラー:EACCES: '/mountebank/imposters.json.ejs'を開く権限が拒否されました。
コンテナのシェルに入ると、次のようになります/
。
bash-4.3# ls -lah
total 0
dr-xr-xr-x 1 root root 38 Dec 16 11:48 .
dr-xr-xr-x 1 root root 38 Dec 16 11:48 ..
drwxr-xr-x 1 root root 4 Feb 28 2022 bin
drwxr-xr-x 5 root root 360 Dec 16 11:48 dev
drwxr-xr-x 1 root root 22 Dec 16 11:48 etc
drwxr-xr-x 1 root root 0 Mar 6 2019 home
drwxr-xr-x 1 root root 72 Feb 28 2022 lib
drwxr-xr-x 1 root root 28 Mar 6 2019 media
drwxr-xr-x 1 root root 0 Mar 6 2019 mnt
drwxr-xr-x 1 root root 168 Dec 15 21:02 mountebank
dr-xr-xr-x 486 nobody nobody 0 Dec 16 11:48 proc
drwxr-xr-x 1 root root 40 Dec 16 11:48 run
drwxr-xr-x 1 root root 792 Mar 6 2019 sbin
drwxr-xr-x 1 root root 0 Mar 6 2019 srv
dr-xr-xr-x 13 nobody nobody 0 Dec 16 11:37 sys
drwxrwxrwt 1 root root 28 Feb 28 2022 tmp
drwxr-xr-x 1 root root 18 Feb 28 2022 usr
drwxr-xr-x 1 root root 6 Feb 28 2022 var
mountebank
誰でも読むことができるようです。ただしcd mountebank
、これを実行しようとすると、ls
次のエラーが発生します。
ls: '.' を開けません: 権限が拒否されました。
なぜそんなことですか?