This method uses Akeeba Backup and Akeeba Kickstart. An alternative method would be to use the command line to zip up all the files and folders. Then use SQL to duplicate the database to a file. Akeeba makes this easier and brings some improvements to that manual method and is recommended if you don't have an opinion.