2017-09-16 23 views
0

我的下一个码头工人,compose.yml文件如何使用docker-compose与npm设置laravel?

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(节点包管理器)访问莫名其妙地建立我的JS和CSS文件中的“网络”容器。

app.dockerfile

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.dockerfile

FROM webdevops/php-apache-dev:ubuntu-16.04 

我已经web.dockerfile

FROM orlandohohmeier/local-npm 
FROM webdevops/php-apache-dev:ubuntu-16.04 

延长试了下路,但故宫是不能从访问'web'容器中的命令行。也许我不明白一些概念,但我只是想编译我的stiles,JavaScript文件和从节点模块复制字体。

此致敬礼。 Ivan

回答

0

尝试将其添加到您的web.docker文件中。

RUN apt-get install -y nodejs npm 

,然后建立你的容器,并尝试在Web容器

docker-compose run web bash 
+0

对不起内运行的节点或NPM。不起作用。我在Docerfile的 –

+0

中没有这个回收站你能分享你的dockerfile吗? – yahyazini

+0

完成。请检查主题 –