我有一个Docker容器,它有NodeJs,npm,jspm& aurelia实现了,我的src文件夹包含安装在主机文件系统上的样式,资产,html和js文件。
一切看起来都不错,但是当我在已安装的卷中更新html或js并刷新Web应用程序时,更改不会反映出来。
我的泊坞文件如下;
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
一切运行正常,我可以在正确的端口等上看到我的网络应用程序。但是,在我的本地目录中进行的代码更改仅在重新启动docker容器时更新,这不是我理解的应该如何工作。
任何想法??
答案 0 :(得分:0)
您可以尝试使用docker-compose让au run --watch
分离。分离后,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
希望,这有帮助。