![](/img/trans.png)
[英]File system events not triggered in docker container when files in mounted volume are changed on the host
[英]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.