Freebsd/appjail
@josephholsten/freebsd/appjailv2026.10.01.2
01README
AppJail jail lifecycle and inventory via SSH on FreeBSD — sync, makejail, ociRun, repairContainer, start, stop, destroy, jexec, logs
02Behaviors
@josephholsten/freebsd/appjail/jailv2026.10.01.2jail.ts
fn sync()
List all jails and write one resource per jail name
fn makejail(name: string, makejail: string, vars?: record, buildArgs?: record, options?: array, runtimeArgs?: array)
Create a jail from a Makejail source (appjail makejail). No timeout — image pulls can take time.
| Argument | Type | Description |
|---|---|---|
| name | string | Jail name |
| makejail | string | Makejail source — local path or fetch specifier (e.g. gh+owner/repo) |
| vars? | record | Variables passed as -V key=val |
| buildArgs? | record | Build arguments passed as -b key=val |
| options? | array | Options passed as -o option |
| runtimeArgs? | array | Arguments forwarded to the jail at runtime after -- |
fn start(name: string)
Start a stopped jail (appjail start)
| Argument | Type | Description |
|---|---|---|
| name | string | Jail name |
fn stop(name: string, force: boolean)
Stop a running jail (appjail stop)
| Argument | Type | Description |
|---|---|---|
| name | string | Jail name |
| force | boolean | Force-stop without running stop scripts |
fn destroy(name: string, force: boolean)
Destroy a jail and remove its configuration (appjail jail destroy). Refuses if the jail is running unless force is set.
| Argument | Type | Description |
|---|---|---|
| name | string | Jail name |
| force | boolean | Destroy even if running (passes -f to appjail jail destroy) |
fn ociRun(name: string, image: string, detach: boolean, user?: string, options?: array, env?: record)
Deploy an OCI container as a jail (appjail oci run). No timeout — image pulls can take time.
| Argument | Type | Description |
|---|---|---|
| name | string | Jail name |
| image | string | OCI image reference (e.g. ghcr.io/owner/app:latest) |
| detach | boolean | Run in background (-d) |
| user? | string | User to run as (-u) |
| options? | array | Options passed as -o option (e.g. 'overwrite=force', 'virtualnet=:<random> default', 'nat', 'expose=80:80' — expose format is host_port:container_port) |
| env? | record | Environment variables passed as -e KEY=VALUE |
fn repairContainer(name: string, image?: string, start: boolean)
Repair a jail whose cached OCI container binding is stale
| Argument | Type | Description |
|---|---|---|
| name | string | Jail name |
| image? | string | OCI image reference to rebuild from (e.g. ghcr.io/daemonless/adguardhome:pkg). |
| start | boolean | Start the jail after repointing the container binding (appjail start) |
fn logs(name: string, lines?: number)
Capture recent log output from a jail (appjail logs tail). Note: OCI jails using s6-log (e.g. daemonless.io images) write logs to /config/logs/... inside the jail — use jexec to read those instead.
| Argument | Type | Description |
|---|---|---|
| name | string | Jail name |
| lines? | number | Number of lines to show (-n) |
fn jexec(name: string, command: array)
Run a command inside a jail via cmd jexec and capture the result
| Argument | Type | Description |
|---|---|---|
| name | string | Jail name |
| command | array | Command and arguments to run inside the jail |
Resources
jail(infinite)— AppJail jail state — status, type, ports, and network addresses
execResult(7d)— Output captured from a command run inside a jail via cmd jexec
@josephholsten/freebsd/appjail/directorv2026.07.07.1director.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| projectDir | string | Absolute path on the remote host to the Director project directory (where appjail-director.yml lives) |
| project? | string | Director project name (DIRECTOR_PROJECT). Omit to let Director choose a random name. |
fn up()
Deploy or redeploy the Director project (appjail-director up). Equivalent to docker compose up -d. No timeout — image pulls can take time.
fn down()
Tear down the Director project (appjail-director down). Equivalent to docker compose down.
fn status()
Return jail status for all services in the project (appjail-director info). Equivalent to docker compose ps.
03Previous Versions
2026.10.01.1
Added 2, removed 1 behaviors
2026.06.12.1
04Stats
A
93 / 100
Downloads
29
Archive size
16.7 KB
- Has README or module doc2/2earned
- README has a code example1/1earned
- README is substantive1/1earned
- Most symbols documented1/1earned
- No slow types (deprecated)1/1earned
- Dependencies pass trust audit2/2earned
- Has description1/1earned
- Platform support declared (or universal)2/2earned
- License1/2partial
no SPDX license declared
- Verified public repository2/2earned
05Platforms
06Labels