weaveworks-plugins / scope-http-statistics

Plugin for Weave Scope which implements various HTTP statistics
Apache License 2.0
40 stars 19 forks source link

Unsupported Kernel: docker run fails with compiler error: 'linux/bpf_common.h' file not found #12

Closed robertpeteuil closed 7 years ago

robertpeteuil commented 7 years ago

The Docker Image fails to run with the command specified.

Ubuntu 14.04 LTS uname -r: 3.13.0-123-generic

$ sudo docker run --rm -it \
>   --privileged --net=host --pid=host \
>   -v /lib/modules:/lib/modules \
>   -v /usr/src:/usr/src \
>   -v /sys/kernel/debug/:/sys/kernel/debug/ \
>   -v /var/run/scope/plugins:/var/run/scope/plugins \
>   --name weaveworksplugins-scope-http-statistics weaveworksplugins/scope-http-statistics

In file included from <built-in>:317:
In file included from <command line>:6:
/virtual/include/bcc/bpf.h:12:10: fatal error: 'linux/bpf_common.h' file not found
#include <linux/bpf_common.h>
         ^
1 error generated.
Traceback (most recent call last):
  File "/usr/bin/http-statistics.py", line 294, in <module>
    kernel_inspector = KernelInspector()
  File "/usr/bin/http-statistics.py", line 57, in __init__
    self.bpf = bcc.BPF(EBPF_PROGRAM)
  File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 284, in __init__
    raise Exception("Failed to compile BPF module %s" % src_file)
Exception: Failed to compile BPF module /usr/bin/ebpf-http-statistics.c