在docker build中遇到打字稿的奇怪问题。
我已用作多阶段构建的Docker文件。
FROM node:13.12.0-alpine3.10 as build
COPY package.json /tmp/package.json
RUN cd /tmp && npm i --unsafe-perm --no-optional && npm cache clean --force
RUN mkdir -p /home/app && mkdir -p /home/app/ui && cp -a /tmp/node_modules /home/app && cp -a /tmp/ui/node_modules /home/app/ui/node_modules
WORKDIR /home/app
COPY . .
RUN npm run build && cd ui && npm run build
但是如果我运行npm,则在本地计算机而不是docker中运行build的工作原理相同>>
运行npm时在dockerfile内运行构建时出错
“错误TS2322:键入'Pick
“”分配给“ ILocationValue”类型。“ 下面是ILocationValue
interface ILocationValue extends MongoDoc, ILoc {}
和
interface ILoc { longitude: number; latitude: number; timezone: string; address: string; }
有人可以帮忙解决此问题,还是与Docker相关或与TS相关的问题?
在docker build for typescript中遇到一个奇怪的问题。我已将Docker文件用作多阶段构建。从节点:13.12.0-alpine3.10作为构建COPY package.json /tmp/package.json运行cd / tmp && ...
[很可能您在使用主机中的主机执行copy . .
时覆盖了node_modules。尝试在干净的存储库上运行命令或将node_modules添加到docker ignore中。