如何在Compose v3中将卷从一个容器装入另一个容器?

时间:2017-04-28 00:17:11

标签: node.js docker docker-compose

我需要使用PHP-FPM和NodeJS构建一个堆栈。我不想在同一容器中混合使用,因此我选择了Docker Compose。这就是我docker-compose.yml的样子:

version: '3'
services:
    webserver:
        build: https://github.com/reypm/php-fpm
        args:
          INSTALL_COMPOSER: true
        dns:
            - 8.8.8.8
            - 8.8.4.4
        volumes:
          - ./laravel_node:/var/www/html
    nodejs:
        image: node:latest

在Docker Compose v3中volumes_from消失了,而卷的文档here对我来说并不是那么清楚。

如何在NodeJS容器上安装VOLUME /var/www/html,以便在NodeJS容器中运行命令,结果出现在PHP-FPM容器上?

我没有看到一些例子12但是没有使用它,或者至少我找不到如何实现这一点。

1 个答案:

答案 0 :(得分:1)

使用指定的卷。

您需要做的就是从音量命令的左侧删除./

volumes:
  - laravel_node:/var/www/html

同样进入节点图像

volumes:
  - laravel_node:/wherever/youwant/this/

通过从卷的左侧排除路径信息,docker将创建一个名为" laravel_node"的命名卷。您可以将此卷装入多个容器,在容器实例之间重复使用该命名卷等。