I've just encountered the issue too.

As an alternative to aibrahim's method if you are doing it remotely via ssh, here's my steps to VNC to display `:0`.

 1. Setup password using `sudo vncpasswd -service`
 2. Add the following lines to /root/.vnc/config.d/vncserver-x11 as described in [RealVNC: Support legacy viewers](https://web.archive.org/web/20210128072120/https://archive.realvnc.com/products/vnc/documentation/4.2/unix/unixconfig.html)
    ```
    SecurityTypes=VncAuth
    UserPasswdVerifier=VncAuth
    ```
 3. Start vncserver using command `sudo vncserver-x11-serviced`

This method allows me to login using Ubuntu's Remmina VNC client.