The browser navigation buttons from the clients browser do not apply for the browser (docker-firefox)
Navigating back will leave the page where the webcontent is streamed
For security reasons 1 docker container per user would be needed
The browser tabs share the same local/session storage and cache/cookies
Spawning the docker containers would need complex setup
Reverse proxy would need complex setup: The containers have their internal ports that the user has to navigate to in his browser
The webcontent is streamed with KasmVNC
Not the same performance on the page as in real (e.g. scrolling, animations, transitions)
Server needs Nvidia GPU to support for rendering complex graphics, videos, or animations, video decoding, 3D rendering (WebGL), and canvas drawing
1 GPU/user would be minimum
Sometimes strange click behavior/copy paste does not work all the time
User is requested for permissions for every new session
For example 'Allow chat.netzint.de to store data in persistent storage' / 'Allow chat.netzint.de to send notifications'
Client's Mic/Webcam could not be passed in (only from the docker host)
When something fails (e.g. the tab crashes or the user loses connection) there is a cryptic error message from KasmVNC that the user will not understand
Also sometimes the connection stopped with no reason
There is no easy way to limit the user navigation (what happens if he thinks to be in Chat app but clicked on a link)
https://docs.linuxserver.io/images/docker-firefox/
Open http://localhost:8765 or https://localhost:8766
Downsides: