我设置了一个运行快速应用程序的Docker容器。这是dockerfile:
FROM节点:最新
# Create app directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
# Install app dependencies
COPY package.json /usr/src/app/
RUN npm install
RUN npm install -g nodemon
RUN npm install --global gulp
RUN npm i gulp
# Bundle app source
COPY . /usr/src/app
EXPOSE 3000
CMD [ "nodemon", "-L", "./bin/www" ]
如您所见,它使用nodejs图像并在我的容器中创建一个app文件夹,其中包含我的应用程序。在docker容器中,在开始运行npm install并在容器上安装我的模块(感谢我在我的本地文件夹中没有这个node_modules文件夹)我想集成使用gulp的SemanticUI。我在我的容器上安装了gulp,但是semantic创建的文件只出现在我的容器上。它们不在我的本地文件夹中。如何动态地使我在容器上创建的文件在本地存在以进行修改。
我认为docker的一个好工作就是没有在你的本地app文件夹上安装node_modules ..也许我错了,如果是的话请纠正我
答案 0 :(得分:1)
您可以使用data volume与容器和主机共享文件。
这样的事情:
docker run ... -v /path/on/host:/path/in/container ...
或者如果您使用的是docker-compose,请参阅volume configuration reference。
...
volumes:
- /path/on/host:/path/in/container