Reflex/backend/Dockerfile

29 lines
1.7 KiB
Docker
Raw Normal View History

2025-05-21 22:13:09 +07:00
# Используем базовый образ Node.js (выбери версию, совместимую с твоим проектом, 18-alpine - хороший выбор)
FROM node:18-alpine
# Устанавливаем рабочую директорию в контейнере
WORKDIR /usr/src/app
# Копируем package.json и package-lock.json (или yarn.lock)
# Это делается отдельно, чтобы воспользоваться кэшированием слоев Docker:
# если зависимости не изменились, Docker не будет переустанавливать их каждый раз.
COPY package*.json ./
# Устанавливаем зависимости приложения
RUN npm install --only=production # Устанавливаем только production зависимости
# Если у тебя есть devDependencies, которые нужны для запуска (маловероятно для простого Express),
# то используй просто RUN npm install
# Копируем остальные файлы приложения в рабочую директорию
COPY . .
# Переменная окружения для порта (можно переопределить в docker-compose.yml)
ENV PORT=5000
# Открываем порт, на котором будет работать приложение
EXPOSE ${PORT}
# Команда для запуска приложения
CMD [ "node", "server.js" ]
# Или если ты хочешь использовать скрипт из package.json для запуска в проде:
# CMD [ "npm", "start" ]