Dockers 部署Nodejs环境的ts 项目遇到的问题

Dockers 部署Nodejs环境的ts 项目遇到的问题

由于不熟悉TS和nodejs所以过程比较曲折。webpack.config\tsconfig.json\package.json\是几个比较关键的文件。细节可以去看详细文档,这里不展开讲;

主要是缺失了start.sh文件和执行npm run build 的时候报错问题;

遇到报错时,请用最新的AI,修复所有错误;

例如这个报错

node_modules/@types/socket.io/index.d.ts:458:44 - error TS2724: '"C:/Demo/datachannel/node_modules/engine.io/build/engine.io"' has no exported member named 'ServerAttachOptions'. Did you mean 'AttachOptions'?

458     interface ServerOptions extends engine.ServerAttachOptions {
                                               ~~~~~~~~~~~~~~~~~~~


Found 1 error in node_modules/@types/socket.io/index.d.ts:458

对照GPT的反馈执行(先不要执行,只是示例)

npm install @types/socket.io@latest engine.io@latest

从新开始一步步修复

npm install typescript@latest --save-dev

npm install @types/express-serve-static-core@latest --save-dev

npm update

npm install @types/socket.io@latest engine.io@latest

Package.json 文件比较重要

"scripts": {

"start": "ts-node server.ts",

"build": "tsc",

"pack": "webpack"

},

我移除了build相关的内容。仅编译在当前目录执行npm run build

在当前目录添加start.sh文件,内容如下:

rm -f nodejs1.tar
tar -cf nodejs1.tar --recursion --exclude package.sh --exclude node_modules --exclude .git *

然后进入wsl系统进入start.sh所在目录

sh start.sh 执行后去就可以把nodejs 上传到docker里面。然后docker 在执行对应的脚本。

posted @ 2024-07-27 14:41  杜文龙  阅读(19)  评论(0编辑  收藏  举报