/furui-rs

Communication control of the container runtime environment is performed using eBPF(aya).

Primary LanguageRust

furui

Communication control of the container runtime environment(now only docker) is performed using eBPF.

Prerequisites

  1. Install a rust stable toolchain: rustup install stable
  2. Install a rust nightly toolchain: rustup install nightly
  3. Install LLVM
  4. Install bpf-linker: cargo install bpf-linker
  5. Install bpftool: sudo apt install linux-tools-generic
  6. Install bindgen-cli: cargo install bindgen-cli
  7. cargo xtask aya-gen

Build eBPF

cargo xtask build-ebpf

To perform a release build you can use the --release flag. You may also change the target architecture with the --target flag

Build Userspace

cargo build

Run

cargo xtask run -- example/nginx.yaml --log-level=info