Deploy¶
Ella Core is available as a Snap and a container image.
Ella Core is available as a Snap. View it on the Snap Store.
Pre-requisites¶
- A machine with at least:
- 2 CPU cores
- 2 GB of RAM
- 10 GB of disk space
- 4 network interfaces
- A Linux distribution that supports Snap packages.
Steps¶
Install the snap:
sudo snap install ella-core
Connect the snap to the required interfaces:
sudo snap connect ella-core:network-control
sudo snap connect ella-core:process-control
sudo snap connect ella-core:sys-fs-bpf-upf-pipeline
sudo snap connect ella-core:system-observe
Edit the configuration file at /var/snap/ella-core/common/config.yaml
to configure the network interfaces:
logging:
system:
level: "info"
output: "stdout"
audit:
output: "stdout"
db:
path: "/var/snap/ella-core/common/data/core.db"
interfaces:
n2:
name: "ens4"
port: 38412
n3:
name: "ens5"
n6:
name: "ens6"
api:
name: "ens3"
port: 5002
tls:
cert: "/var/snap/ella-core/common/cert.pem"
key: "/var/snap/ella-core/common/key.pem"
xdp:
attach-mode: "native"
Note
For more information on the configuration options, see the configuration file reference.
Start the service:
sudo snap start ella-core.cored
Navigate to https://localhost:5002
to access the Ella UI.
We provide a container image for Ella Core on GitHub Container Registry.
Pull the image from the registry:
docker pull ghcr.io/ellanetworks/ella-core:latest
Installation can then be done using the approach of your choice.
You can build Ella Core from source.
Warning
Building from source is recommended for development purposes only.
Pre-requisites¶
Install the pre-requisites:
sudo snap install go --channel=1.24/stable --classic
sudo snap install node --channel=20/stable --classic
sudo apt install clang llvm gcc-multilib libbpf-dev
Clone the Ella Core repository:
git clone https://github.com/ellanetworks/core.git
Move to the repository directory:
cd core
Note
If you want to build a specific version, checkout the tag after cloning the repository.
For example, to build version 0.0.4, run git checkout v0.0.4
.
Build the frontend:
npm install --prefix ui
npm run build --prefix ui
Build the backend:
go build cmd/core/main.go
Edit the configuration file at core.yaml
to configure the network interfaces.
Start the service:
./main --config core.yaml
Navigate to https://localhost:5002
to access the Ella UI.