尝试使用相应的镜像运行react-vite容器后,在日志中收到以下内容后失败:
node_modules/two-stdlib/libs/lottie.js (13062:32):eval 的使用 强烈建议不要使用“node_modules/ Three-stdlib/libs/lottie.js” 它会带来安全风险,并可能导致修改问题。
一旦完成构建,容器就会关闭。
Dockerfile:
FROM node:latest AS builder
WORKDIR /src
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "run", "start"]
我尝试寻找有关此事的其他讨论,但我找不到任何讨论。
package.json:
{
"name": "project",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vite build",
"start": "vite build",
"lint": "eslint . --ext js,jsx --report-unused-disable-directives --max-warnings 0",
"preview": "vite preview"
},
"dependencies": {
"@emailjs/browser": "^4.3.3",
"@react-three/drei": "^9.105.4",
"@react-three/fiber": "^8.16.2",
"framer-motion": "^11.1.7",
"maath": "^0.10.7",
"prop-types": "^15.8.1",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-parallax-tilt": "^1.7.225",
"react-router-dom": "^6.23.0",
"react-social-icons": "^6.16.0",
"react-vertical-timeline-component": "^3.6.0",
"three": "^0.164.1"
},
"devDependencies": {
"@types/react": "^18.2.66",
"@types/react-dom": "^18.2.22",
"@vitejs/plugin-react": "^4.2.1",
"autoprefixer": "^10.4.19",
"eslint": "^8.52.0",
"eslint-plugin-react": "^7.34.1",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.6",
"postcss": "^8.4.38",
"prettier": "^3.1.0",
"prettier-eslint": "^16.1.2",
"tailwindcss": "^3.4.3",
"vite": "^5.2.0"
},
"optionalDependencies": {
"@rollup/rollup-linux-x64-gnu": "4.6.1"
}
}
vite.config.js:
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
// https://vitejs.dev/config/
export default defineConfig({
plugins: [react()],
build: { chunkSizeWarningLimit: 1600 },
preview: {
port: 3000,
strictPort: true,
},
server: {
port: 3000,
strictPort: true,
host: true,
},
});
从package.json文件中可以看出,该项目使用了3D模型文件、成帧器动作等。
这很奇怪 - 我注意到前面提到的存储库指出有强调的文件 - 尽管没有。一些软件包是使用遗留的对等依赖关系安装的,这可能导致它 - 我用一个新的存储库复制了它,具有相同的文件、依赖项和所有内容,但我已经安装了没有 --legacy-peer-deps 标志的所有内容,似乎由于某种原因解决了这个问题,尽管其中一些软件包到目前为止不应该兼容据我所知。