J'ai téléchargé l'image Ubuntu dans Docker sous Windows.
Je peux exécuter Ubuntu en:
docker run -it ubuntu
Je ne vois que root
, mais je ne vois pas l'interface graphique d'Ubuntu. Comment installer ou configurer l'interface graphique pour cette image et exécuter des applications sur cette interface graphique comme nous l'exécutons dans une machine virtuelle?
Généralement, l'approche pour développer avec Docker est de conserver le IDE sur le poste de travail, et de construire des images avec le binaire produit à partir des sources.
Vous pouvez trouver de nombreux exemples d'un tel flux de travail (compilation locale, déploiement dans des conteneurs Docker) dans domeide.github.io/ (Docker rencontre l'IDE!)
Par exemple: Docker Tools for VisualStudio permet une intégration étroite entre votre éditeur et les processus Docker.
(Mais c'est pour Visual Studio 2015, pas pour Visual Studio Code.)
fcwu/docker-ubuntu-vnc-desktop
https://github.com/fcwu/docker-ubuntu-vnc-desktop fournit une configuration pratique:
docker run --name ubvnc -p 6080:80 -p 5900:5900 dorowu/ubuntu-desktop-lxde-vnc:bionic
Alors soit:
visitez: http://127.0.0.1:6080/#/ qui exécute un client noVNC VNC JavaScript plus limité
courir:
Sudo apt-get install tigervnc-viewer
xtigervncviewer :5900
Puis dans vinagre
, vous voudrez peut-être passer en mode plein écran pour pouvoir voir le bureau complet
J'ai également essayé vinagre
, mais c'était beaucoup plus lent lors du défilement de Firefox sur YouTube.
Pour quitter, il suffit de tuer docker
sur le terminal. Et pour redémarrer la machine
docker start ubvnc
puis reconnectez-vous avec VNC. Puis pour quitter la machine:
docker stop ubvnc
Vous devez attendre quelques secondes pour que le serveur VNC sur l'invité démarre avant de pouvoir vous connecter.
Le chrome ne démarre pas à partir du menu. Si vous essayez de le lancer à partir de la ligne de commande, il explique pourquoi:
Running as root without --no-sandbox is not supported. See https://crbug.com/638180.
Firefox s'en fiche cependant.
TODO: pas d'audio. --device /dev/snd
n'a pas aidé:
Voir également:
Testé sur Ubuntu 19.04 Host, fcwu/docker-ubuntu-vnc-desktop
, dorowu/ubuntu-desktop-lxde-vnc
ID de l'image: 70516b87e92d.
Vous pouvez connecter directement un conteneur Docker à votre X serveur.
Voir Stack Overflow question Pouvez-vous exécuter des applications GUI dans un conteneur Docker?.