В локальном дереве разработчиков обновите версию пакета в файле package.json
.Запустите npm install
или yarn install
локально.Запустите ваше приложение.Убедитесь, что это работает.Запустите ваши тесты.Исправьте все проблемы совместимости при обновлении.Делайте все это без участия Docker.
Перезапустите docker build .
, чтобы перестроить образ Docker с новыми зависимостями пакетов.
Остановите старый контейнер, удалите его и запустите новый контейнер с новым образом.
Как правило, вы никогда не должны устанавливать что-либо в работающий контейнер.Удалять контейнеры очень обычно, и при этом все содержимое контейнера будет потеряно.
Существует общий «шаблон» запуска Node в Docker, привязки к нему приложения, а затем подключенияанонимный том в каталоге node_modules
.Для рутинной разработки я обнаружил, что намного проще просто установить Node на мой хост (это буквально одна команда apt-get install
или brew install
).Если вы используете эту установку, ориентированную на Docker, анонимный том для node_modules
не заметит, что вы изменили каталог node_modules
, и вам придется перезапустить docker build
, а также удалить и воссоздать ваши контейнеры.