2017-10-10 7 views
1

J'ai essayé de donner la commande ci-dessous de conteneur et trouvé le problème ci-dessous, peut-être à cause de la version du noyau "-moby". Impossible d'obtenir une image docker sans le mot "-moby" venant dans la version du noyau Linux.est-il possible d'exécuter linux perf outil à l'intérieur du conteneur docker

J'ai essayé d'installer linux perf sur une machine virtuelle ayant ubuntu et cela a fonctionné.

#docker run -t -i ubuntu:14.04 /bin/bash 

[email protected]:/# perf 

WARNING: perf not found for kernel 4.9.41 

You may need to install the following packages for this specific kernel: 

linux-tools-4.9.41-moby 
linux-cloud-tools-4.9.41-moby 

You may also want to install one of the following packages to keep up to date: 

linux-tools-moby-lts-<series> 
linux-cloud-tools-moby-lts-<series> 
+0

Avez-vous une version de perf qui fonctionne sur l'hôte? Il peut être possible de l'exécuter sur le conteneur. –

+0

Vous devez exécuter 'perf' sur la machine virtuelle Docker et je ne pense pas que [alpine ait un paquet pour cela] (https://pkgs.alpinelinux.org/contents?file=perf&path=&name=&branch=&repo= & arch =) – Matt

+0

@MarkPlotnick, j'ai perf perf sur l'hôte mais je ne veux pas copier le binaire perf dans le conteneur et l'exécuter. Mon objectif est d'avoir une image de docker qui peut construire une perf travaillant sur n'importe quelle machine. – Rupesh

Répondre

0

juste faire

apt-get install linux-tools-generic 

et faire un lien symbolique vers/usr/bin/perf. (dans mon cas):

ln -s /usr/lib/linux-tools/3.13.0-141-generic/perf /usr/bin/perf 

cela a fonctionné pour moi!