2017-07-20 3 views
0

J'ai créé un nouveau conteneur en utilisant lxc sur ma plate-forme ubuntu, créé un utilisateur sudo, installé Uhd et enfin gnuradio. Cependant, lorsque je tente de lancer gnuradio je reçois l'erreur suivante:Ubuntu lxc container donnant gtk.GtkWarning: impossible d'ouvrir l'erreur d'affichage

~$ sudo gnuradio-companion 
Traceback (most recent call last): 

File "/usr/local/bin/gnuradio-companion", line 97, in <module> 
check_gtk() 

File "/usr/local/bin/gnuradio-companion", line 64, in check_gtk 
die(err, "Failed to initialize GTK. If you are running over ssh, " 

File "/usr/local/bin/gnuradio-companion", line 42, in die 
import gtk 

File "/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py", line 69, in <module> 
_init() 

File "/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py", line 57, in _init 

warnings.warn(str(e), _gtk.Warning) 

gtk.GtkWarning: could not open display 

J'ai essayé plusieurs méthodes trouvées ici pour essayer de résoudre ce problème avec gtk.GtkWarning lorsque je tente d'exécuter gnuradio et aucun n'a fonctionné. Je suis assez nouveau pour les conteneurs gnuradio, ubuntu et lxc. J'ai essayé d'exécuter le programme depuis l'extérieur du conteneur en tant que root ainsi qu'avec l'utilisateur sudo. Est-ce que quelqu'un peut m'aider avec ça?

+0

Pour être honnête, les conteneurs lxc ne sont tout simplement pas destinés à exécuter des applications GUI. Utilisez GRC sur votre Ubuntu natif, puis transférez vos implémentations de graphe de flux python vers le conteneur LXC (puisque je ne connais qu'un seul endroit où LXC est utilisé pour les déploiements UHD + GR, déployer des objets dans des conteneurs est quelque chose dont vous aurez besoin , de toute façon) –

+0

Alors serions-nous en mesure d'utiliser plusieurs versions uhd dans différents conteneurs, puis exporter vers GRC sur l'Ubuntu natif? Nous avons beaucoup de différentes radios qui ont besoin de différentes versions UHD, nous espérions que les conteneurs pourraient être un moyen de remédier à ce problème. – BDunn

Répondre

0

Je résolu ce problème en utilisant ceci à l'intérieur d'un conteneur docker:

apt-get update 
apt-get install Xvfb 
Xvfb :1 -screen 0 1024x768x16 &> xvfb.log & 
DISPLAY=:1.0 
export DISPLAY 

Après, exécuter le programme.