Joh*_*ohn 7 docker docker-compose angular
我刚刚从Project Clarity中植入了一个 Angular 应用程序,并尝试在 Docker 容器中运行它时使其热重载工作。
如果我进入正在运行的容器并编辑文件,重新加载工作正常,但我希望能够编辑容器外的文件并在容器中更新它们。如果我设置音量,我认为会起作用,但它似乎不起作用。
我的 Dockerfile....
FROM node:latest
RUN mkdir -p /usr/src/client
WORKDIR /usr/src/client
COPY package.json /usr/src/client
RUN npm install
COPY . /usr/src/client
EXPOSE 4200
CMD ["npm", "start"]
Run Code Online (Sandbox Code Playgroud)
和我的 docker-compose.yml 文件...
version: '2'
services:
client:
build: clarity-seed
ports:
- "4200:4200"
volumes:
- ./clarity-seed:/usr/src/client
- /usr/src/client/node_modules
Run Code Online (Sandbox Code Playgroud)
我使用 docker-compose 是因为我最终会设置一个 Express 服务器和一个 mongo 数据库。
小智 1
根据我从这篇中等文章中了解到的内容: https://olshansky.medium.com/hot-reloading-with-local-docker-development-1ec5dbaa4a65
设置卷时,应将容器中的文件直接映射到项目目录中的文件(将容器外部文件映射到容器内部文件)。
因此,对于您的情况,您只需更改第一个卷以适合本地文件,即:
build: clarity-seed
ports:
- "4200:4200"
volumes:
- ./:/usr/src/client
- /usr/src/client/node_modules
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
21016 次 |
最近记录: |