【发布时间】:2021-09-21 05:08:42
【问题描述】:
基本上,当我对我的 ts 文件进行更改时,它不会反映在浏览器中,也不会反映在应该显示刷新日志的控制台中。我正在使用 nodemon 来处理打字稿更改,并且全部使用 Docker 和 docker-compose。 docker-compose 在 server 文件夹之外,server 文件夹的主要文件存储在 src 子文件夹中
nodemon.json
{
"watch": [
"src",
".env"
],
"ext": "js,ts,json",
"ignore": [
"src/**/*.spec.ts"
],
"execMap": {
"ts": "node --inspect=0.0.0.0:9229 --nolazy -r ts-node/register"
}
}
packaje.json 脚本
"scripts": {
"start": "NODE_PATH=./build node build/app.js",
"inspect": "nodemon --inspect src/app.ts",
"dev": "nodemon src/app.ts",
"build": "tsc -p .",
"test": "jest"
},
Docker
FROM node:16
RUN apt-get update
WORKDIR /usr/app
COPY . .
RUN yarn install
docker-compose 仅用于服务器
server:
container_name: server
build:
context: ./server
command: yarn run dev
volumes:
- ./server/src:/usr/app/src
- ./server/nodemon.json:/usr/app/src/nodemon.json
【问题讨论】:
-
你能在主机上运行
yarn run dev,而不涉及Docker吗?将 Docker 引入此设置有什么好处? -
yarn run dev 在主机上热重载它。我正在使用 docker,因为我将使用 mongodb 数据库并托管在数字海洋上。
标签: javascript node.js typescript docker nodemon