Încerc să deschid Firefox GUI pe un container Docker.
Evit cea mai comună soluție care pare să se folosească la un moment dat /tmp/.X11-unix
de la gazdă pentru că vreau ca containerul să funcționeze pe orice gazdă, inclusiv pe o gazdă fără cap fără X11.
Scopul este doar să folosiți seleniul pentru a deschide GUI Firefox și a face o captură de ecran.
Nu sunt sigur dacă se poate, dar cred că este.
DIN ubuntu:latest
RUN DEBIAN_FRONTEND="noninteractive" apt-get -y update
RUN DEBIAN_FRONTEND="noninteractive" apt-get -y install python3 python3-pip firefox-geckodriver x11vnc xvfb
RUN DEBIAN_FRONTEND="noninteractive" apt-get -y install x11-xserver-utils
RUN DEBIAN_FRONTEND="noninteractive" pip install --upgrade --no-cache-dir pip-with-requires-python && \
pip install --upgrade --no-cache-dir --prefer-binary selenium
WORKDIR /app
COPIEAZĂ punctul de intrare.sh .
COPIEAZĂ script.py .
RUN chmod +x punct de intrare.sh
CMD ["x11vnc", "-create", "-forever"]
AFIȘARE ENV: 0
CMD ["xhost", "+"]
ENTRYPOINT ["/app/entrypoint.sh"]
Momentan ieșire xhost xhost: nu se poate deschide afișajul :0
. Nu sunt sigur de :0
dar am încercat mai multe valori.
Desigur, seleniul eșuează și cu:
Nu se poate iniția serverul: Nu s-a putut conecta: Conexiunea a fost refuzată
Eroare: nu se poate deschide afișajul: :0
Am ramas fara idei asa ca orice ar fi apreciat :)
Probabil că îmi lipsește o parte importantă.