What does “locally” mean here? Why wouldn’t you just go to the domain name? Or are you on a consumer router that doesn’t route the external IP to the local network, so the domain name resolves to the public IP and you can get to it from the local network?
If that’s the case, the simplest is to add that IP to your hosts file so you can access it on its name. You’ve got name-based virtual hosts in Apache, so an IP alone can only ever take you to the first configured VirtualHost.
You could make it available on a path within an IP-based VirtualHost, or on a path in the first VirtualHost (whatever VirtualHost you get when you visit http://192.168.0.100). That’d be problematic, though, for anything short of a plain HTML site, without a lot of hoop-jumping to deal with the PHP-FPM configuration in a way that works.
You can configure BIND to serve different views, but that’s probably way too much complexity for one or two client machines (and would depend on you hosting DNS locally).
Anyway, for me, I would just put it in the hosts file.
The configuration is no different. The problem is the DNS server you’re presumably querying doesn’t resolve that name to your local IP.
So, as I said, the simplest thing is to add that name to your hosts file on your client system. Unless you want to run a DNS server locally just to make those local sites available, that’s the only reasonable option. You need to be able to browse to the name of your VirtualHost to be able to visit more than one on a given IP, whether it is local or not.