laravel - 如何使用 docker-compose 使用 npm 设置 laravel?

标签 laravel docker npm

我有下一个 docker-compose.yml 文件

version: '2'
services:
  # The Application
  app:
    build:
      context: ./
      dockerfile: app.dockerfile
    working_dir: /var/www/html
    volumes:
      - ./giftmeabetterplanet:/var/www/html
    environment:
      - "DB_PORT=3306"
      - "DB_HOST=database"

  # The Web Server
  web:
    build:
      context: ./
      dockerfile: web.dockerfile
    working_dir: /var/www/html
    links:
      - database:mysql
    volumes_from:
      - app
    ports:
      - 81:80
    environment:
      - "WEB_DOCUMENT_ROOT=/var/www/html/public"
  # The Database
  database:
    image: mysql:5.6
    volumes:
      - dbdata:/var/lib/mysql
    environment:
      - "MYSQL_DATABASE=homestead"
      - "MYSQL_USER=homestead"
      - "MYSQL_PASSWORD=secret"
      - "MYSQL_ROOT_PASSWORD=secret"
    ports:
        - "3306"

volumes:
  dbdata:

我需要以某种方式使 NPM(节点包管理器)可访问,以便在“web”容器中构建我的 JS 和 CSS 文件。

应用程序.docker文件
FROM php:7.0.4

RUN apt-get update && apt-get install -y libmcrypt-dev \
    mysql-client libmagickwand-dev --no-install-recommends \
    && pecl install imagick \
    && docker-php-ext-enable imagick \
    && docker-php-ext-install mcrypt pdo_mysql

web.docker文件
FROM webdevops/php-apache-dev:ubuntu-16.04

我通过扩展 web.dockerfile 尝试了下一种方法
FROM orlandohohmeier/local-npm
FROM webdevops/php-apache-dev:ubuntu-16.04

但是 npm 不能从 'web' 容器中的命令行访问。也许我不了解一些概念,但我只想编译我的 stiles、javascript 文件并从节点模块复制字体。

最好的祝福。伊万

最佳答案

对于 PHP7.2,这是我的 php.dockerfile 中的内容
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - RUN apt-get install -y nodejs

关于laravel - 如何使用 docker-compose 使用 npm 设置 laravel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46259008/

相关文章:

拉维尔 : How access laravel app from local network

javascript - Laravel 显示 JS 确认对话框与另一个 JS 函数内联

jenkins - 如果我们可以直接暴露80端口,那么反向代理有什么好处呢?

docker - 无法通过Docker中的SSH连接到Corda节点

node.js - 从主机在Docker容器上运行命令

javascript - 升级 angular2-cli 项目中的 angular 2 依赖项

laravel - 过滤来自 'notifications' 表 'data' 字段的通知 - Laravel

javascript - Npm postinstall 仅用于开发

npm - 如何npm install-保存所有已安装的软件包?

php - 带复选框的多次更新 Laravel (LARAVEL 5.2)