Выбор использования Docker или нет, с виртуальными машинами или без них в Debian 10... Количество ядер ЦП, виртуальных ЦП?

Ни одна из предложенных клавиатур -не работала с моим эмулятором терминала в Win 7 Pro :Ctrl-V, Ctrl-Shift-V, Shift-Ins.

Пока я не нашел решение только для клавиатуры -, сработало следующее:

  • щелчок по iconв левом верхнем углу окна вызывает меню:
  • , затем нажмите Edit->Paste
  • .
1
01.11.2019, 16:30
1 ответ

Этот тип решения чаще всего принимает -системный администратор, а не разработчик. Решение о разделении на виртуальные машины/контейнеры часто не то, о чем вам следует думать на машине разработки. Большую часть времени вы можете разрабатывать «на голом железе», когда все установлено напрямую.

Однако!

Есть несколько соображений, о которых системный -администратор хотел бы, чтобы вы подумали, а также о вещах, которые помогут вам в долгосрочной перспективе.

  1. Поскольку производственная версия вашего программного обеспечения будет развернута на нескольких узлах (, разделенных, как вы предложили в своем вопросе ), рекомендуется проверить , что все работает в этой конфигурации.
  2. Имеет смысл решать, где проходят разделительные линии между контейнерами, разработчику, а не системному -администратору. Например, если он будет развернут с помощью докера, разработчику имеет смысл написать Dockerfileнезависимо от того, запускают ли они его таким образом на своей машине разработки.

Имея это в виду, вам действительно не нужно слишком беспокоиться о точной природе ваших контейнеров, только о том, где проходят разделительные линии между ними.

Виртуальная машина против Docker против Docker на виртуальной машине

Насколько мне известно, технология виртуальных машин способна выделить для всех виртуальных машин в совокупности больше виртуальных ядер, чем у хоста имеется фактических ядер. Хотя никакая виртуальная машина не может иметь больше ядер, чем физически -хоста, ваш процессор с HT считается как 8 ядер, а не 4. Таким образом, вы можете работать на виртуальных машинах, если хотите. Но в целом виртуальные машины — это тяжеловесные контейнеры. Они запускают полную операционную систему (, включая ядро ​​)внутри каждого контейнера, и, как правило, загружают много оперативной памяти, если не ЦП.

Виртуальные машины также очень чувствительны к состоянию. Одной из проблем коммерческой разработки является обеспечение согласованности производственной среды, среды тестирования и разработки.Легко оставить много мусора в виртуальной машине, которая делает тесты пройденными, а затем не работает в рабочей среде.

С другой стороны, Docker (, не работающий на хосте Windows, )изолирует процессы очень легким способом, он не запускает отдельное ядро ​​для каждого контейнера, как это делают виртуальные машины. Вместо этого он использует специальную технологию изоляции, встроенную в ядро ​​Linux, для запуска процессов на хосте. Это делает его чрезвычайно эффективным.

Также Docker уделяет особое внимание одноразовым контейнерам. Это позволяет очень легко -разобрать (уничтожить )контейнер и начать заново с вашего образа, чтобы доказать, что он будет работать, когда попадет в производство.

2
27.01.2020, 23:29

Теги

Похожие вопросы