Moving nextcloud into an apache VirtualHost block for use as a subdomain?
You just need to add a new VirtualHost definition, in place of the Alias and Directory directives:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName cloud.my-domain.dev
DocumentRoot /var/www/nextcloud
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/nextcloud
SetEnv HTTP_HOME /var/www/nextcloud
</VirtualHost>
Both virtual hosts can run on port 80. That's how name-based virtual hosting works - it lets you run multiple hosts on the same IP address and port. Apache matches the value of the Host header that the client sends against the ServerName and ServerAlias directives, to determine which virtual host to serve them.
You should read the Apache Virtual Host documentation, especially the part about name-based virtual hosts.