pub struct ComputeConfig {
pub bridge: String,
pub subnet: String,
pub vcpus: u32,
pub mem_mib: u32,
pub kernel_signing_pubkeys: Vec<String>,
pub kernel_allowed_hashes: Vec<String>,
pub region: Option<String>,
pub docker_endpoint: DockerEndpoint,
pub docker_volume_mode: DockerVolumeMode,
pub sql_shim_url: Option<String>,
pub managed_db_privilege: ManagedDbPrivilege,
}Expand description
compute section — opt-in compute backends. Present
⇒ serve registers the backends this node can offer and advertises them to
the scheduler; backends are capability-detected (container on Linux, remote
docker when a daemon is reachable, VMM when /dev/kvm exists).
Fields§
§bridge: StringBridge the container veths / VM taps attach to (default br-boatramp).
subnet: StringGuest IP subnet (default 10.0.0.0/24).
vcpus: u32vCPUs this node advertises as schedulable (0 ⇒ detect from the host).
mem_mib: u32Memory (MiB) this node advertises as schedulable (0 ⇒ a 1 GiB default).
kernel_signing_pubkeys: Vec<String>Static kernel-signing public keys ("<alg>:<hex>") — the trust anchor
for the posture-scaled kernel bar. Under multi-tenant, a dynamically-
selected default kernel must carry a signature verifying against one of
these. Host-access-gated (never in the KV tier); changing it needs a
restart. Empty ⇒ no kernel may be signed-verified (strict posture then
accepts none).
kernel_allowed_hashes: Vec<String>Static allow-list of kernel content hashes (sha256 hex) a dynamic
default may select under multi-tenant. Host-access-gated. Empty ⇒ no
kernel is allow-listed.
region: Option<String>This node’s region tag (FA-8). Advertised on the compute Node so a
gateway routing to a compute:-backed workload with --lb nearest sends
each request to the nearest replica by its node’s region — no manual
--region map. None ⇒ region-agnostic.
docker_endpoint: DockerEndpointHow the remote-Docker backend reports a workload’s reachable endpoint.
published (default) publishes the container port on 127.0.0.1:<ephemeral>
so a host-native serve reaches it on any daemon (incl. Docker Desktop /
macOS, where the bridge IP is not host-routable); bridge routes to the
container bridge IP directly (only when serve shares the daemon’s network).
docker_volume_mode: DockerVolumeModeHow the remote-Docker backend backs a workload’s persistent volumes.
named (default) attaches a daemon-managed docker volume by name (portable
across daemons + Docker Desktop / macOS); bind bind-mounts a host directory
under <data_dir>/compute/volumes/<name> (local daemon only).
sql_shim_url: Option<String>Guest-reachable base URL of the compute sql-shim (PLAN-compute-bindings) —
e.g. http://10.0.0.1:8081 (the compute bridge gateway) or the docker bridge
gateway. Set ⇒ a workload’s --bind sql reaches the managed database through a
listener bound on 0.0.0.0:<port>. None (default) ⇒ compute sql bindings off.
managed_db_privilege: ManagedDbPrivilegePrivilege strategy for a managed database’s stock image on a shared-kernel
backend (see ManagedDbPrivilege). rootless by default.
Trait Implementations§
Source§impl Clone for ComputeConfig
impl Clone for ComputeConfig
Source§fn clone(&self) -> ComputeConfig
fn clone(&self) -> ComputeConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ComputeConfig
impl Debug for ComputeConfig
Source§impl Default for ComputeConfig
impl Default for ComputeConfig
Source§impl<'de> Deserialize<'de> for ComputeConfigwhere
ComputeConfig: Default,
impl<'de> Deserialize<'de> for ComputeConfigwhere
ComputeConfig: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for ComputeConfig
impl RefUnwindSafe for ComputeConfig
impl Send for ComputeConfig
impl Sync for ComputeConfig
impl Unpin for ComputeConfig
impl UnsafeUnpin for ComputeConfig
impl UnwindSafe for ComputeConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more