Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.dotvibe.app/llms.txt

Use this file to discover all available pages before exploring further.

Default container security

All containers run with restrictive defaults. No container in v1 runs privileged.
PolicySetting
Dropped capabilitiesAll Linux capabilities dropped by default. Only NET_BIND_SERVICE retained if the service binds to ports < 1024
Read-only root filesystemEnabled where possible. Services that need a writable root get explicit writable overlay mounts
No host PID namespaceContainers never share the host PID namespace
No privileged modeprivileged: true is rejected — in both native manifests and Compose imports
Limited writable mountsOnly explicitly declared volumes and state mounts are writable; all other paths are read-only
No host networkContainers use project-scoped bridge networking; host network mode is not available
No device passthroughNo /dev device mounts in v1

Network isolation

  • Each project gets its own CNI network
  • Inter-project network traffic is blocked
  • Outbound internet access requires the security.network capability to be granted by the user
  • If network capability is denied, all outbound traffic is blocked (except inter-service traffic within the project)

Compose imports

The same hardening rules apply to Compose-imported apps. Fields that violate these policies are rejected during import:
Rejected Compose fieldReason
privileged: trueNo privileged containers in v1
cap_addCapabilities cannot be added
pid: hostNo host PID namespace sharing
network_mode: hostNo host network mode
devicesNo device passthrough
sysctlsNo sysctl modification
security_optManaged by runtime hardening

VM isolation

All containers run inside a persistent Alpine Linux VM managed via Apple’s Virtualization framework. This provides an additional hardware-level isolation boundary between the containers and the macOS host.