| FROM node:22 | |
| USER root | |
| RUN apt-get update && apt-get install -y \ | |
| git \ | |
| build-essential \ | |
| python3 \ | |
| pkg-config \ | |
| libssl-dev \ | |
| libcairo2-dev \ | |
| libpango1.0-dev \ | |
| libjpeg-dev \ | |
| libgif-dev \ | |
| librsvg2-dev \ | |
| libsqlite3-dev \ | |
| && rm -rf /var/lib/apt/lists/* | |
| WORKDIR /home/node/app | |
| # --- FIX START --- | |
| # Copy the rest of your application code with correct ownership | |
| # This copies package.json and your source files into /home/node/app | |
| COPY --chown=node:node . . | |
| # --- FIX END --- | |
| # Copy và chmod với quyền root | |
| COPY start.sh /start.sh | |
| RUN chmod +x /start.sh | |
| # Đổi lại quyền cho user node (Ensure everything in app dir is owned by node) | |
| RUN chown -R node:node /home/node/app | |
| USER node | |
| EXPOSE 5173 4173 3000 3001 7860 | |
| CMD ["/start.sh"] | |