1. ホーム
  2. docker

[解決済み] ディレクトリをファイルにマウントしようとしていませんか(またはその逆)?

2022-08-02 12:04:34

質問

ドッカーにバージョン 17.06.0-ce . コマンドでdockerを使用してNGINXをインストールしようとしたとき。

docker run -p 80:80 -p 8080:8080 --name nginx -v $PWD/www:/www -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/logs:/wwwlogs -d nginx:latest

と表示されます。

docker: Error response from daemon: oci runtime error: container_linux.go:262: starting container process caused. コンテナプロセスを開始する際に発生したエラー"process_linux.go:339: container init caused \"rootfs_linux.go:57: mount \"/appdata/nginx/conf/nginx.conf \" to rootfs \\"/var/lib/docker/aufs/mnt/dcea22444e9ffda114593b18fc8b574adfada06947385aedc2ac09f199188fa0\\" で \\"/var/lib/docker/aufs/mnt/dcea22444e9ffda114593b18fc8b574adfada06947385aedc2ac09f199188fa0/etc/nginx/nginx.conf\\" caused \"not a directory"" : ディレクトリをファイルにマウントしようとしていませんか(またはその逆)?指定されたホストパスが存在し、期待されるタイプであるかどうか確認してください。

をマウントしない場合 nginx.conf ファイルをマウントしない場合は、すべて問題ありません。では、どのようにすれば設定ファイルをマウントできるのでしょうか?

どのように解決するのですか?

ドッカーが認識するのは $PWD/conf/nginx.conf として認識するからです。 フォルダ であり、ファイルとしてではない。ファイルとしてではなく、フォルダとして扱われるかどうかを確認します。 $PWD/conf/ ディレクトリに nginx.conf として ディレクトリ .

でテストします。

> cat $PWD/conf/nginx.conf 
cat: nginx.conf/: Is a directory

それ以外の場合は Dockerイシュー .

同じ構成で問題なく動作しています。