ParaView and VTK for doing remote rendering for multi-users rely on wslink and its launcher to start a new process per connecting user.
When using the SmartConnect on the client side, it will first try to reach the launcher unless a sessionURL
is provided in the connection configuration like you can see here.
You can see the setup that we use to support multiple users in that docker configuration.
The only thing that you have to keep in mind is that you can replace the ParaView application (pvpython) by your VTK application (vtkpython).
HTH