X e xdotool em LXC em vez de KVM

4

Até agora eu estou usando várias xautomation / xdotool scripts em uma máquina virtual KVM (linux guest), a fim de deixá-los fazer o seu trabalho e deixe-me trabalhar de forma ininterrupta. Eu estou usando um disco VirtIO, mas ainda assim o desempenho do convidado é lento na maioria das vezes.

Posso fazer o mesmo em um contêiner LXC? usando o docker ?

    
por Konstantinos 07.06.2014 / 01:26

1 resposta

1

Eu não posso dizer nada sobre o desempenho, mas ao pesquisar isso, deparei-me com este SO Q & A intitulado: você pode executar aplicativos GUI em uma janela de encaixe? que mostra 3 métodos para realizar isso.

  1. Executando AppX em VNC

    Este método mostra o uso do seguinte Dockerfile:

    # Firefox over VNC
    #
    # VERSION               0.1
    # DOCKER-VERSION        0.2
    
    from    ubuntu:12.04
    # make sure the package repository is up to date
    run     echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
    run     apt-get update
    
    # Install vnc, xvfb in order to create a 'fake' display and firefox
    run     apt-get install -y x11vnc xvfb firefox
    run     mkdir /.vnc
    # Setup a password
    run     x11vnc -storepasswd 1234 ~/.vnc/passwd
    # Autostart firefox (might not be the best way to do it, but it does the trick)
    run     bash -c 'echo "firefox" >> /.bashrc'
    

    Em seguida, execute a instância do Docker da seguinte forma:

    $ docker run -p 5900 creack/firefox-vnc x11vnc -forever -usepw -create
    
  2. Use o Docker + Subuser

    Usando o Subuser + Docker, você pode iniciar diretamente VMs do Docker com apenas um único aplicativo, concedendo-lhes acesso restrito a pastas específicas do host físico.

    Subuser is meant to be easilly installed and in and of itself technically insignificant. It is just a wrapper around docker, nothing more.

    Subuser launches docker containers with volumes shared between the host and the child container. That's all.

    Aqui está um vídeo mostrando o subutilizador em ação .

  3. Executando o X11 em SSH

    Esta última técnica mostra como configurar uma instância do Docker com serviços X11 + SSH em execução. Esta configuração permite que qualquer aplicativo X11 seja tunelado por SSH.

    The ssh is used to forward X11 and provide you encrypted data communication between the docker container and your local machine.

    Este método continua a configuração do Xpra + Xephyr no lado local.

    Xpra + Xephyr allows to display the applications running inside of the container such as Firefox, LibreOffice, xterm, etc. with recovery session capabilities. So, you can open your desktop any where without losing the status of your applications, even if the connection drops.

    Xpra also uses a custom protocol that is self-tuning and relatively latency-insensitive, and thus is usable over worse links than standard X.

    The applications can be rootless, so the client machine manages the windows that are displayed.

    Fonte: DOCKER DESKTOP: SEU DESKTOP SOBRE O SSH QUE FUNCIONA DENTRO DE UM RECIPIENTE DOCKER

Referências

  • Você pode executar aplicativos GUI em uma janela de encaixe?
por 07.06.2014 / 06:04