Комментарии 9
Я бы сразу заменил lts на конкретную версию.
Как роуты будут работать после статической сборки?
Почему нельзя один раз COPY . .
?
Можно ещё забиндить фолдер, чтобы .env с секретами не класть в докер. И это можно в той же командной строке, как у вас или в докер-компоузе
node_modules точно нужны для сбилженного проекта?
Простой ответ, для сбилженного проекта node_modules не нужен.
Более сложный ответ. Мы копируем node_modules перед стадией билда. Часть кода, который мы импортируем из библиотек, находится в node_modules, и без присутствия данной папки в корне, перед билдом, мы не сможем собрать рабочее приложение.
Но, если у нас простой проект, у которого нет сторонних зависимостей, т.е. прям чистый js вообще без всего, то, конечно, и отпадает необходимость в node_modules, там ведь ничего нет :). Да и в докере необходимости тогда также нет, легче просто передать минифицированный код
Да и картинку сменить неплохо бы
Как поместить ваше Next.js/React приложение в Docker