Docker 和嵌套卷

Docker 和嵌套卷

我正在尝试将一个 Web 应用程序 docker 化。它需要 PHP,因此我使用richarvey/nginx-php-fpm

由于 Web 应用将配置数据存储到 Web 根目录中,因此 Web 根目录必须是持久的。因此,我选择为 Web 根目录创建一个卷:

./smartvisu/Dockerfile
FROM ubuntu:14.04
MAINTAINER abc
RUN apt-get -y install git


RUN commands to get data into /usr/share/nginx/html
VOLUME /usr/share/nginx/html
ENTRYPOINT /usr/bin/tail -f /dev/null

效果很好。数据是持久的。不幸的是,我需要让 docker-image 的用户将两个文件夹注入 webroot: /usr/share/nginx/html/lib/usr/share/nginx/html/pages/mypages

因此,我尝试的是:

smartvisu_data:
  build: ./smartvisu/.

smartvisu:
  image: richarvey/nginx-php-fpm
  volumes_from:
  - smartvisu_data
  volumes:
  - /mnt2/RockOn_Configs/config/smartvisuconfig/lib:/usr/share/nginx/html/lib
  - /mnt2/RockOn_Configs/config/smartvisuconfig/pages/henfri/:/usr/share/nginx/html/pages/henfri
  ports:
  - 8080:80

现在,不幸的是,该volumes_from部分确实起作用了,但是将两个文件夹挂载到 / 文件夹中却不起作用。

文件夹/usr/share/nginx/html/lib/usr/share/nginx/html/pages/henfri是空的。

答案1

请确保您的文件权限。您的主机文件夹必须具有 docker 用户的 rw 权限。

相关内容