BlanketOpsD supports two Docker execution modes, depending on whether you want:
This runs the real blanketd node agent directly inside Docker with access to the host Linux kernel networking stack.
This is the same mode used for Kubernetes DaemonSets.
Using the daemon runtime Dockerfile:
docker build -t blanketopsd:daemon -f Dockerfile.daemon .
This image includes:
sudo mkdir -p /etc/blanketd
sudo chmod 755 /etc/blanketd
wg genkey | sudo tee /etc/blanketd/wg0.key > /dev/null
sudo chmod 600 /etc/blanketd/wg0.key
docker run -d --name blanketd-test \
--privileged \
--network host \
-v /etc/blanketd:/etc/blanketd:ro \
blanketopsd:daemon
./dist/blanketctl status
./dist/blanketctl list-interfaces
ready: true
bridges, heartbeat, wireguard = running
wg0 visible in ip a
docker stop blanketd-test
docker rm blanketd-test
sudo ip link delete wg0 2>/dev/null || true
for br in br-basic br-fz-priv br-fz-pub br-wg-priv br-wg-pub; do
sudo ip link delete $br 2>/dev/null || true
done
This boots a real gokrazy Linux OS inside a virtual machine running in Docker.
This is used for:
docker build -t blanketopsd-gokrazy -f Dockerfile.gokrazy .
docker run --rm -it -p 8080:8080 blanketopsd-gokrazy
Then open:
๐ http://localhost:8080
Youโll get:
Start everything:
docker compose up --build
| Service Name | Port(s) | Description |
|---|---|---|
| blanketopsd | 9000 | Native privileged Linux daemon runtime running as a Kubernetes DaemonSet |
| gokrazy-vm | 8080 | Full gokrazy OS booted via QEMU (VM-in-Docker for edge & simulation use) |
docker buildx build --platform linux/amd64,linux/arm64 --push \
-t blanketops/blanketopsd:latest \
-f Dockerfile.daemon .
docker buildx build --platform linux/amd64 --push \
-f Dockerfile.gokrazy \
-t blanketops/blanketopsd-os:latest .
Content type
Image
Digest
sha256:002432b5eโฆ
Size
182.6 MB
Last updated
8 months ago
docker pull nkanyezisolutions/blanketopsd