Skip to content

iwanbk/nuckrelay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nuckrelay

Multi-Platform Build

nuckrelay is a Netbird relay server written in Rust.

Status

It works for my personal use

Features:

  • WebSocket
  • TLS
  • Let's Encrypt
  • QUIC
  • Proper healthcheck
  • Metrics

Usage

It is currently only tested on Docker-based installations provided by the NetBird self-hosting quickstart guide.

Assuming that the NetBird installation directory is $HOME:

git clone https://github.com/iwanbk/nuckrelay.git
cd nuckrelay
make alpine-release
cp target/x86_64-unknown-linux-musl/release/nuckrelay $HOME/netbird-relay

Modify the relay section in the docker-compose.yml file:

relay:
    image: alpine:latest
    restart: unless-stopped
    networks: [netbird]
    volumes:
      # Mount current directory to /app in the container
      - ./:/app
    entrypoint: ["/bin/sh", "-c"]
    command:
      - |
        cd /app
        set -a
        source ./relay.env
        set +a
        chmod +x ./netbird-relay
        ./netbird-relay
    logging:
      driver: "json-file"
      options:
        max-size: "500m"
        max-file: "2"

Stop the old containers and start the new ones:

sudo docker compose down
sudo docker compose up -d caddy zitadel
sudo docker compose up -d

About

NetBird Relay in Rust

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published