Instalando Linux com interface gráfica e TigerVNC em um Docker
Quero criar uma imagem Docker em que possa usar da mesma forma que uso uma máquina virtual.
Requisitos:
- Sistema Ubuntu/Debian/CentOS/Fedora
- Interface gráfica (qualquer)
- Permita parar o container e iniciar ele depois (não precisar ficar recriando o container toda hora)
- Acessar a interface gráfica via VNC
- Poder redimensionar o VNC em tempo de execução (TigerVNC)
Há um Docker pronto para isso!
A melhor imagem docker que encontrei foi essa:
https://gitee.com/xiangming123456/ubuntu-vnc-xfce
Discussões e tutoriais sobre como fazer
Discussão no StackOverflow
https://stackoverflow.com/questions/36221215/using-vncserver-gui-application-virtual-display-in-docker-container
Tutorial bacana usando Fedora e TigerVNC
https://georgik.rocks/how-to-run-fedora-gui-in-docker/
Outro tutorial bacana com Ubuntu e TigerVNC
https://gitee.com/xiangming123456/ubuntu-vnc-xfce
Tutorial para criar sua própria imagem
https://medium.com/@techupbusiness/running-gui-apps-securely-in-docker-sandbox-5d945288929b
Imagens que testei e tem algum problema
Logo que você fecha, ela morre, e não faz resize dinamicamente.
https://hub.docker.com/r/x11vnc/desktop
Não faz resize. Destroi o conteiner no final. Não inicia mais depois de parado.
https://github.com/DigitalGlobe/debian-desktop
Não faz resize. Usa um script em python maluco ao invés de comando docker direto. Destroi o conteiner no final.
https://hub.docker.com/r/x11vnc/desktop
Zalenium, baseado na imagem do Selenium
https://medium.com/@shivam.somani09/running-automated-test-cases-on-vnc-viewer-using-docker-16656c3d1d87
Imagem docker do Selenium
Todos os Selenium Standalone Debug
https://github.com/SeleniumHQ/docker-selenium
Problemas
Não faz resize em tempo real. Usa o fluxbox, uma interface bem limitada.
Instalando Ubuntu no Docker na mão
docker run -d --hostname ubuntu18 --name ubuntu18 --network host ubuntu:18