**Entorn gràfic a Docker** {{tag> docker grafic #FpInfor #Ciber #CiberMp03 #Ceti #CetiMp03}} * És possible arrencar aplicacions amb entorn gràfic amb docker. * Per fer-ho, es necessiten 2 passes: 1. Utilitzar la variable $DiSPLAY que et mostra el display actiu del host i compartir-lo al contenidor mitjançant la variable d'entorn DISPLAY 2. Compartir el directoris de l'xserver al contenidor mitjançant un volum * Això pot servir per provar les aplicacions en diferents entorns, per provar les web amb diferents versions dels navegadors,etc... ***Passos*** 1. Actualitzar x1-xserver-utils per a poder compartir el display sudo apt install x11-xserver-utils 2. Dockerfile d'exemple per arrancar l'xclock FROM ubuntu:latest ENV DEBIAN_FRONTEND noninteractive RUN apt-get update RUN apt-get install -qqy x11-apps 3. Fem un buil per crear la imatge roger@roger:~/dev$ docker build . -t grafic Sending build context to Docker daemon 42.55MB Step 1/4 : FROM ubuntu:latest ---> 27941809078c Step 2/4 : ENV DEBIAN_FRONTEND noninteractive ---> Using cache ---> 0d9f9d878365 Step 3/4 : RUN apt-get update ---> Using cache ---> 8fa620109141 Step 4/4 : RUN apt-get install -qqy x11-apps ---> Using cache ---> f23d3e83ed67 Successfully built f23d3e83ed67 Successfully tagged grafic:latest 4 - Arranquem roger@roger:~/dev$ export DISPLAY=:0.0 roger@roger:~/dev$ xhost +local:docker roger@roger:~/dev$ docker run --network=host --rm -it --privileged --env DISPLAY=$DISPLAY -v $XAUTH:/root/.Xauthority --volume="$HOME/.Xauthority:/root/.Xauthority:rw" -v /tmp/.X11-unix:/tmp/.X11-unix grafic xclock xhost - ***Configuracions extres*** La mida de la pantalla es pot configurar amb variables d'entorn DISPLAY_WIDTH Amplada en pixels de l'aplicació DISPLAY_HEIGHT Altura en pixels de l'aplicació \\ ===== EXERCICI Test del procés===== - Crea una imatge docker per a poder provar la teva aplicació web amb una versió de firefox antiga \\