mkdir和复制文件与docker中webpack的卷

时间:2017-11-22 15:04:35

标签: docker webpack

我正在尝试在我的docker容器上安装webpack。它正在运行,并且正在运行,但是当我保存在本地计算机上时,它不会更新我的容器中的文件。我有以下docker-compose文件:

version: '2'
services:
    web:
        build:
          context: .
          dockerfile: docker/web/Dockerfile
        container_name: arc-bis-www-web
        restart: on-failure:3
        environment:
          FPM_HOST: 'php'
        ports:
          - 8080:8080
        volumes:
          - ./app:/usr/local/src/app
    php:
        build:
            context: .
            dockerfile: docker/php/Dockerfile
        environment:
            CRM_HOST: '192.168.1.79'
            CRM_NAME: 'ARC_test_8_8_17'
            CRM_PORT: '1433'
            CRM_USER: 'sa'
            CRM_PASSWORD: 'Multi*Gr4in'
        volumes:
            - ./app:/usr/local/src/app
    node:
        build:
            context: .
            dockerfile: docker/node/Dockerfile
        container_name: arc-bis-www-node
        volumes:
            - ./app:/usr/local/src/app

我的节点容器由以下dockerfile运行:

FROM node:8
RUN useradd --create-home user

RUN mkdir /usr/local/src/app
RUN mkdir /usr/local/src/app/src
RUN mkdir /usr/local/src/app/test
WORKDIR /usr/local/src/app

# Copy application source files
COPY ./app/package.json /usr/local/src/app/package.json
COPY ./app/.babelrc /usr/local/src/app/.babelrc
COPY ./app/webpack.config.js /usr/local/src/app/webpack.config.js
COPY ./app/test /usr/local/src/app/test

RUN chown -R user:user /usr/local/src/app
USER user

RUN npm install

ENTRYPOINT ["npm"]

现在我已经从上面取出了复制调用并且它仍然运行良好,但是这两个选项都不允许我在本地保存文件并让它们显示在我的容器的localhost中。理想情况下,我认为有一个卷可以让我更新我的本地文件,并让它通过容器中的卷读取。那有意义吗?我仍然在Docker身边。在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

如果您使用-v标记启动容器,则可以映射容器和本地存储。您可以找到更多信息here