nodejs express 打包部署
当前文件路径
webpack.config.js
const path = require('path');
module.exports = {entry: './app.js', // Express 入口文件target: 'node', // 指定 Node.js 环境output: {path: path.resolve(__dirname, 'dist'),filename: 'bundle.js'},mode: 'production'
};
打包命令
npx webpack --config webpack.config.js
服务器文件路径`
dockerfile
FROM node:18.12.1
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
WORKDIR /usr/src/app
EXPOSE 3000
CMD ["node", "app.js"] # 或 CMD ["npm", "start"]
.dockerignore 忽略文件和dockerfile 同级
node_modules
npm-debug.log
docker 构建镜像命令
docker build -t express-app .
docker启动命令
docker run -p 3000:3000 -d --name express express-app
sqllate 数据库是个文件 需要做个数据卷 映射到app下的sqlfile下docker run -p 3000:3000 -v /home/nodejsdb:/usr/src/app/dbFile -d --name express express-app