FWIW, here's what I'm doing in lieu of native duplication/staging functionality. YMMV:
Must ensure wpcli installed first: https://wp-cli.org/
1. Create new site
site staging.domain.com -wp -cache=on
2. Export database from current site and copy to new site
cd ~/www/domain.com/htdocs
wp db export
mv domain_com-2019-06-24-7a722fe.sql ~/www/staging.domain.com/htdocs/dbexport.sql
3. Import database
cd ~/www/staging.domain.com/htdocs
wp db import dbexport.sql
wp search-replace 'http://domain.com' 'http://staging.domain.com'
4. Copy files (themes/plugins/uploads)
cp -r ~/www/domain.com/htdocs/wp-content ~/www/staging.domain.com/htdocs
5. Visit new site!
http://staging.domain.com
(don't forget to point DNS records for staging.domain.com to your server)