Skip to main content

crewship capacity

Show what host admission control is doing right now.
Crewship holds a crew container start — before the container is created — when the host cannot afford another one, and starts it when it can. This command is how to tell a held start from a hung one.

Reasons

Thresholds

All four are instance settings, read live — a change takes effect on the next held start, not the next restart.
See Sizing a crew → Host capacity for why the floor is an absolute figure rather than a percentage, and why starts are staggered.

Platform support

The host-memory signal comes from /proc/meminfo and /proc/pressure/memory, which exist on Linux only. On macOS — where the apple container provider runs — the host-memory gate is inactive, and this command reports host-memory gate inactive (signal unavailable on this platform) rather than presenting a gate that is quietly doing nothing. The concurrency bound and the stagger still apply. /proc/pressure/memory further needs a kernel built with CONFIG_PSI; where it is missing the pressure veto never fires, and its absence is never read as pressure.

Scope

Admission control answers exactly one question: should this host start one more crew container right now, or wait. It does not tune cgroups, evict, or rebalance, and it never touches a container that is already running — a running container cannot be paused to free memory (docker pause is a single write to cgroup.freeze; the cgroup keeps every page). Reusing a crew container that is already running costs the host nothing and is never held. Only a create, or the restart of a stopped container, goes through the gate.

API

Read-only and instance-scoped. Any authenticated user can call it: someone whose run is being held needs to be able to see that it is held.

See also