Похоже, вам не хватает импорта.
import { library } from '@fortawesome/fontawesome-svg-core'
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
import { faIgloo } from '@fortawesome/free-solid-svg-icons'
library.add(faIgloo)
https://fontawesome.com/how-to-use/on-the-web/using-with/react
Вы в значительной степени создаете ту же модель процесса как IIS - забава! Я использовал бы те же инструменты, которые IIS использует, ее относительно устойчивое против взламывания и его разработанный для разделения системы во многие параллельные задания.
Можно использовать Задания Win32 для установки квот для памяти, CPU, потоков, и можно настроить контекст защиты для различных процессов для выполнения в, таким образом ограничив доступ к файловой системе.
Для контроля я посмотрел бы на WMI.
Для отслеживания стека при зависании или катастрофическом отказе, я использовал ADPlus снова от Microsoft.
Для получения консольного вывода, выезд, Создающий Дочерний процесс с Перенаправленным Вводом-выводом.
Относительно ограничений безопасности создайте низкую учетную запись пользователя полномочия и выполните задание / процесс как тот пользователь.
Решения для виртуализации решают эту проблему. Возможно, можно основывать решение на VMware (или эквивалентный) и запустить отдельные виртуальные машины (одно для каждого процесса). Вы получите хорошую изоляцию, управление использованием памяти/CPU и отчетами. Существуют издержки переносящейся ОС для каждого процесса, но это в зависимости от требований Вашего проекта это могло бы быть приемлемо.