Dockerfile очень помогает с точки зрения отслеживания пакетов, которые устанавливаются и необходимы в системе, но я не смог найти надежной альтернативы для управления виртуальной машиной и ее создания в том же состоянии, что и раньше.
создание AMI помогает вернуть его в то же состояние, но не очень помогает просматривать или проверять изменения, внесенные в виртуальную машину.
так есть ли альтернатива Dockerfile для виртуальной машины,
Напишите сценарии установки, которые могут привести установку базовой ОС в желаемое состояние. При необходимости добавьте ведение журнала. Передайте их системе контроля версий.
Используйте предпочитаемый вами вариант управления конфигурацией или средства автоматизации, чтобы помочь написать сценарии. У них хорошо получается устанавливать программное обеспечение и шаблоны для настройки. Возможно, они помогут с ведением журнала и отчетом о различиях в конфигурации.
Решите, как вы развертываете и управляете. Возможно, вы сможете каждый раз развертывать новую виртуальную машину либо из виртуальной машины-шаблона, либо из сценариев установки «с нуля». В противном случае вам также понадобится возможность применять изменения к уже работающим хостам.
Packer от Hashicorp имеет концепцию файлов-упаковщиков, которые имеют аналогичное назначение. https://www.packer.io/
Примеров их использования очень много, например, https://github.com/boxcutter