When i execute my dockerfile, at building stage i have this error:
> [build-stage 6/6] RUN yarn run build:
0.894 yarn run v1.22.22
0.983 $ tsc --noEmit && vite build
2.110 vite v5.3.3 building for production...
2.241 transforming...
2.254 Trace
2.254 at convertNode (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13043:17)
2.254 at convertNodeList (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13061:34)
2.254 at Array.arrayExpression (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:12578:25)
2.254 at convertNode (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13050:28)
2.254 at convertNodeList (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13061:34)
2.254 at Array.sequenceExpression (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:12947:28)
2.254 at convertNode (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13050:28)
2.254 at Array.property (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:12922:22)
2.254 at convertNode (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13050:28)
2.254 at convertProgram (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:12405:12)
2.255 ✓ 1 modules transformed.
2.258 x Build failed in 73ms
2.258 error during build:
2.258 Unknown node type: undefined
2.258 at convertNode (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13044:15)
2.258 at convertNodeList (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13061:34)
2.258 at Array.arrayExpression (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:12578:25)
2.258 at convertNode (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13050:28)
2.258 at convertNodeList (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13061:34)
2.258 at Array.sequenceExpression (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:12947:28)
2.258 at convertNode (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13050:28)
2.258 at Array.property (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:12922:22)
2.258 at convertNode (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13050:28)
2.258 at convertProgram (file:///app/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:12405:12)
2.297 error Command failed with exit code 1.
Locally on my machine yarn run build works well (win11)
dockerfile
FROM node:lts-alpine
WORKDIR /app
COPY package.json .
RUN yarn
COPY . .
RUN yarn run build
EXPOSE 3000
CMD ["yarn", "run", "build"]
docker-compose.yaml
version: "3.4"
services:
frontend:
build:
context: ./frontend
container_name: docker-mern-frontend-by-nginx
environment:
- VITE_SERVER_ENDPOINT=http://localhost:5000
ports:
- "80:80"
volumes:
- ./frontend:/usr/src/frontend
- frontend_node_modules:/usr/src/frontend/node_modules/
volumes:
mongo_data:
frontend_node_modules:
vite.config.ts
import { defineConfig } from 'vite';
// import react from '@vitejs/plugin-react';
import react from '@vitejs/plugin-react';
// https://vitejs.dev/config/
export default defineConfig({
base: '/',
plugins: [react()],
define: {
VITE_SERVER_ENDPOINT: process.env.VITE_SERVER_ENDPOINT,
},
preview: {
port: 3000,
strictPort: true,
},
server: {
port: 3000,
strictPort: true,
host: true,
origin: 'http://0.0.0.0:3000',
watch: {
usePolling: true,
}
}
});
package.json
{
"name": "test",
"author": {
"name": "Dolzhikov Denis",
},
"repository": {
"url": "https://github.com/DenisDolzhikov/"
},
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "tsc --noEmit && vite build",
"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
"preview": "vite preview"
},
"dependencies": {
"@emotion/react": "^11.11.4",
"@emotion/styled": "^11.11.5",
"@fontsource/roboto": "^5.0.13",
"@mui/icons-material": "^5.16.1",
"@mui/lab": "^5.0.0-alpha.172",
"@mui/material": "^5.16.1",
"@reduxjs/toolkit": "^2.2.6",
"async-mutex": "^0.5.0",
"dotenv": "^16.4.5",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-intl": "^6.6.8",
"react-redux": "^9.1.2",
"react-router-dom": "^6.24.1",
"react-toastify": "^10.0.5",
"redux": "^5.0.1",
"redux-persist": "^6.0.0",
"scss": "^0.2.4",
"uuid": "^10.0.0"
},
"devDependencies": {
"@types/node": "^22.0.0",
"@types/react": "^18.3.3",
"@types/react-dom": "^18.3.0",
"@types/uuid": "^10.0.0",
"@typescript-eslint/eslint-plugin": "^7.13.1",
"@typescript-eslint/parser": "^7.13.1",
"@vitejs/plugin-react": "^4.3.1",
"eslint": "^8.57.0",
"eslint-plugin-react-hooks": "^4.6.2",
"eslint-plugin-react-refresh": "^0.4.7",
"rollup": "^4.19.1",
"typescript": "^5.2.2",
"vite": "^5.3.1"
},
"optionalDependencies": {
"@rollup/rollup-linux-x64-gnu": "4.6.1"
},
"overrides": {
"vite": {
"rollup": "npm:@rollup/wasm-node"
}
}
}
When i did searching solution, i added optional Dependencies and overrides in my package.json.
"optionalDependencies": {
"@rollup/rollup-linux-x64-gnu": "4.6.1"
},
"overrides": {
"vite": {
"rollup": "npm:@rollup/wasm-node"
}
}
Also i changed my vite.config.ts, i did add this:
define: {
VITE_SERVER_ENDPOINT: process.env.VITE_SERVER_ENDPOINT,
},
server: {
port: 3000,
strictPort: true,
host: true,
origin: 'http://0.0.0.0:3000',
watch: {
usePolling: true,
}
}
And i added volumes for node_modules.
All of this doesnt work for me 🙁