【问题标题】:Integrate Grunt in docker-compose?将 Grunt 集成到 docker-compose 中?
【发布时间】:2016-11-24 13:20:01
【问题描述】:

我有两个以 docker-compose f- docker-compose.yml -f docker-compose-osx.yml up 开头的 docker compose 文件

文件内容为:

docker-compose.yml:

version: '2'
services:
    fpm:
        image: sbusso/php-fpm-ion
    nginx:
        image: nginx:stable
        ports:
            - "80:80"
        links:
            - fpm
            - db
    db:
        image: orchardup/mysql
        ports:
            - 3306:3306
        environment:
            MYSQL_ROOT_PASSWORD: root
            MYSQL_DATABASE: myproject

docker-compose-osx.yml

version: '2'
services:
    fpm:
        links:
            - sync
        volumes_from:
            - sync
    db:
        links:
            - sync
        volumes_from:
            - sync
    nginx:
        links:
            - sync
        volumes_from:
            - sync
    sync:
        image: zeroboh/lsyncd
        volumes:
            - /var/www/html
            - ./src:/src:Z
            - ./docker-config/nginx:/etc/nginx/conf.d
            - /var/lib/php/session
            - ./docker-config/lrsync/lrsync.lua:/etc/lrsync/lrsync.lua
            - ./sync:/sync

通常当我连接到我的 fpm 容器时,我需要运行 grunt,但我的 docker 容器不知道 grunt 和 npm。

如何在我的 docker-compose 文件中集成 grunt?

谢谢!

【问题讨论】:

    标签: php docker gruntjs docker-compose


    【解决方案1】:

    你的 fpm 容器(sbusso/php-fpm-ion)没有安装 grunt 和 npm(也没有安装它的基础镜像)。您可以通过阅读 Dockerfile here 看到这一点。

    sbusso/php-fpm-ion 基于 sbusso/php-fpm,它基于 debian:jessie。你可以像在任何 Debian 系统上一样安装 npm 和 grunt。 debian 包中可用的 npm 版本相当老,你应该看看他们的安装指南on the website 然后用npm install -g grunt-cli 安装 grunt

    请记住,容器与主机是隔离的,它们既不能共享文件也不能共享二进制文件。即使您的主机上安装了 npm 和 grunt,您的容器也无法启动它们。

    【讨论】:

      猜你喜欢
      • 2019-07-27
      • 2021-01-05
      • 2020-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-29
      相关资源
      最近更新 更多