Joseph M OBrien joe
  • Joined on 2026-03-15

tailbox (0.19.0)

Published 2026-05-31 14:32:51 -05:00 by joe

Installation

[registry]
default = "gitea"

[registries.gitea]
index = "sparse+" # Sparse index
# index = "" # Git

[net]
git-fetch-with-cli = true
cargo add tailbox@0.19.0

About this package

Tailscale-rs network adapter for minibox containers

tailbox

Tailscale-rs network adapter for minibox containers.

Implements minibox_core::domain::NetworkProvider via TailnetNetwork, giving containers access to Tailscale networks (tailnets) without a full Tailscale install inside the container.

Modes

Mode Description
Gateway One shared tailscale::Device for the daemon. Containers reach tailnet peers
via proxy connections through that device.
PerContainer Each container gets its own tailscale::Device and tailnet IP.

Platform support

Linux and macOS ARM64 only, matching tailscale-rs v0.2 platform support. The tailscale dependency is gated with cfg(any(target_os = "linux", target_os = "macos")).

Configuration

use tailbox::TailnetConfig;

let config = TailnetConfig {
    // Inline auth key — if None, looks up `key_secret_name` in minibox-secrets,
    // then falls back to the `TAILSCALE_AUTH_KEY` env var.
    auth_key: None,
    key_secret_name: "tailscale-auth-key".to_string(),
};

Usage in miniboxd

Wire TailnetNetwork into HandlerDependencies behind the tailnet feature flag:

[features]
tailnet = ["tailbox"]
#[cfg(feature = "tailnet")]
let network = tailbox::TailnetNetwork::new(TailnetConfig::default()).await?;

Modules

Module Description
adapter TailnetNetwork — the NetworkProvider adapter
auth Auth key resolution and device authentication
config TailnetConfig — runtime configuration
experiment Feature-gated experimental networking extensions

Dependencies

ID Version
anyhow ^1
async-trait ^0.1
minibox-core ^0.19.0
minibox-secrets ^0.19.0
secrecy ^0.10
serde_json ^1
tokio ^1
tracing ^0.1
proptest ^1
tempfile ^3
tokio ^1
tailscale ^0.2
Details
Cargo
2026-05-31 14:32:51 -05:00
2
MIT OR Apache-2.0
34 KiB
Assets (1)
Versions (1) View all
0.19.0 2026-05-31