1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
FROM node:18-alpine WORKDIR /app/medusa COPY package.json . COPY yarn.lock* ./ COPY package-lock.json* ./ RUN npm install COPY . . # Build only when TypeScript sources exist RUN if [ -d "src" ]; then npm run build; else echo "Skipping build: no src/ directory"; fi # Expose port EXPOSE 9000 # Start command CMD ["npm", "run", "start"]