簡體   English   中英

Docker安裝的卷僅在容器重啟時更新

[英]Docker mounted volume only updates on container restart

我有一個實現了NodeJs,npm,jspm和aurelia的docker容器,我的src文件夾包含安裝在主機文件系統上的樣式,資產,html和js文件。

一切看起來都很好,但是當我更新已安裝的卷中的html或js並刷新Web應用程序時,更改不會反映出來。

我的docker文件如下:

   FROM node:6.1.0
   MAINTAINER   Webnostix code@webnostix.co.uk

   RUN npm install -g jspm
   RUN apt-get -y install git
   RUN npm install aurelia-cli -g
   RUN npm install gulp -g

   # Setup the script to run on startup
   COPY . /var/www/

   EXPOSE 9000 3001
   WORKDIR /var/www/
   CMD npm install -y && au run —watch

我正在包含我的源代碼的主機目錄中使用以下命令運行docker容器

    docker run -it --name AureliaBoilerPlate -v $(pwd):/var/www/src -p 9000:9000 -p 3001:3001 webgnostics/aurelia

一切正常,我可以在正確的端口等上看到我的Web應用程序。但是,在本地目錄中進行的代碼更改僅在重新啟動Docker容器后更新,這不是我所理解的工作方式。

有任何想法嗎??

您可以嘗試讓au run --watch使用au run --watch -compose分離運行。 分離了一個au build也會刷新應用程序。 可能比每次重新啟動整個容器更好。

據我所知,通過代碼更改來刷新應用程序目前不起作用。 也可以在這里查看此討論: Github

跟隨我的docker-compose文件:

version: '2'

services:
  aurelia-cli-runner:
    image: saschan/aurelia-cli:latest
    ports:
      - "9001:9000"
      - "3001:3001"
    volumes:
      - ./app/:/usr/local/etc/app
    working_dir: //usr/local/etc/app
    command: "au run --watch"

啟動分離的容器: docker-compose -f docker-compose.yml up -d

刷新應用程序: au build

希望能有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM