There are two aspects to this - the first is having the gui process owned by a process that does not terminate. There are any number of ways to achieve this, but having tmux own the process is "good enough" if it is how you currently work.
The second is having the gui output somewhere. If you want the gui output to both go to the screen of the server the process is running on, and also be able to access it remotely, then x11vnc is a good option and is present in most distributions. All you need is an X11 session, so not a full desktop, just enough of X to display the gui, and x11vnc.
This exposes the X session it is run under as a VNC session, so it can be accessed remotely. Ideally you would do this over ssh, as vnc does not provide much in the way of security.