Да, вам нужно установить Node или Python или любое другое программное обеспечение, которое вам нужно в вашем приложении, в ваш контейнер.Причина в том, что контейнер должен работать на любом хост-компьютере, на котором установлен Docker, независимо от того, как настроен хост-компьютер или какое программное обеспечение на нем установлено.
Это может быть немного утомительно всначала убедитесь, что ваш Dockerfile
устанавливает все необходимое программное обеспечение, но это становится очень полезным, когда вы хотите запустить свой контейнер на другом компьютере.Тогда все, что вам нужно сделать, это набрать docker run
, и оно должно работать!
Как сказал Дэвид выше, контейнеры Docker изолированы от вашего хост-компьютера и должны рассматриваться как совершенно другой компьютер / хост.Способ, которым контейнеры могут связываться с другими контейнерами, или иногда хост через сетевые порты.
Одним «исключением» из изоляции между контейнером и хостом является то, что контейнер может иногда записывать в файлы на хосте для сохранения данных даже после остановки контейнера.Вы можете использовать томов или монтировать , чтобы разрешить контейнерам записывать файлы на хосте.
Я бы предложил Обзор Docker для получения дополнительной информации о Docker.