Разметку сохранять не надо, только данные. Разметка должна генерироваться из этих данных. А можно вообще хранить в корзине только id'шники, а с сервера запрашивать по ним информацию.
Возвращаемое значение
Массив, содержащий удалённые элементы. Если будет удалён только один элемент, вернётся массив из одного элемента. Если никакие элементы не будут удалены, вернётся пустой массив.
Медленные накопители с интерфейсом NVME не выпускают, предпочитают SATA (включая форм-фактор M.2, который тоже бывает через SATA-шину, а не только через PCI-E).
Если кто-нибудь знает пример NVME-накопителя, работающего медленнее интерфейса SATA - приведите его.
Если интересует безопасность, используйте на SSH ключи вместо паролей и запретите авторизацию по паролю. Можно один ключ для всех серверов использовать, он ассиметричен, знание публичной части ключа никак не раскроет секретную часть ключа.
В случае с ASCII-only символами в регулярке - нет смысла, т.к. в UTF-8 все символы с кодом < 128 кодируются ровно также, как и в однобайтной кодировке, а символы с кодами >= 128 кодируются последовательностью байт с кодами >= 128. Случайно пересечься между собой и быть ложно интерпретированы эти оба диапазона в UTF-8 не могут. К другим многобайтным кодировкам это не относится.
Не сохранять сами элементы, а только признак выбранного (например, его id или value), а при загрузке страницы - нужному элементу устанавливать атрибут checked.
Через proxy_pass в nginx пробросить на нужный порт внутри контейнера, таким образом, заодно можно переложить на nginx и прочую работу - по логгированию, получению сертификатов и т.п., не реализуя это отдельно внутри контейнера.
Тут зависит от того, как конкретно эта программа определяет второй экземпляр. Способ, который гарантированно сработает - запускать другие экземпляры в полноценной виртуалке (VirtualBox к примеру).