You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
coderaft creates isolated development environments, contained in a project's Docker box (container). Each project operates in its own disposable environment, while your code remains neatly organized in a simple, flat folder on the host machine.
9
+
coderaft creates isolated development environments, contained in a project's Docker island. Each project operates in its own disposable environment, while your code remains neatly organized in a simple, flat folder on the host machine.
10
10
11
11
## Features
12
12
13
13
-**Instant Setup** - Create isolated development environments in seconds
14
-
-**Docker-based** - Leverage the power of boxes (containers) for consistent environments
14
+
-**Docker-based** - Leverage the power of islands (containers) for consistent environments
15
15
-**Clean Organization** - Keep your code organized in simple, flat folders
16
16
-**Configurable** - Define your environment with simple JSON configuration
17
17
-**Disposable** - Easily destroy and recreate environments as needed
18
-
-**Isolated** - Each project runs in its own box, preventing conflicts
18
+
-**Isolated** - Each project runs in its own island, preventing conflicts
19
19
-**Docker-in-Docker** - Use Docker within your coderaft environments by default
20
20
-**Cross-platform** - Supports Linux, macOS, and Windows (primary target: Debian/Ubuntu)
21
21
-**Well Tested** - Comprehensive test suite
@@ -26,7 +26,7 @@ coderaft focuses on fast, disposable, Docker-native development environments wit
26
26
27
27
- Minimal config: a small JSON file, no heavy frameworks
28
28
- Clean host workspace: flat folders, no complex mounts
29
-
- Reproducible: isolated per-project boxes you can destroy/recreate anytime
29
+
- Reproducible: isolated per-project islands you can destroy/recreate anytime
30
30
- Docker-in-Docker ready: use Docker inside your environment out of the box
31
31
- Cross-platform: runs on Linux, macOS, and Windows wherever Docker is available
32
32
@@ -79,7 +79,7 @@ Commit a `coderaft.json` to your repo so teammates can just:
79
79
coderaft up
80
80
```
81
81
82
-
Optional: mount your local dotfiles into the box
82
+
Optional: mount your local dotfiles into the island
Copy file name to clipboardExpand all lines: docs/src/content/docs/docs/cli.md
+41-41Lines changed: 41 additions & 41 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -54,16 +54,16 @@ coderaft up [--dotfiles <path>] [--keep-running]
54
54
```
55
55
56
56
**Options:**
57
-
-`--dotfiles <path>`: Mount a local dotfiles directory into common locations inside the box
58
-
-`--keep-running`: Keep the box running after setup completes (overrides auto-stop-on-idle)
57
+
-`--dotfiles <path>`: Mount a local dotfiles directory into common locations inside the Island
58
+
-`--keep-running`: Keep the Island running after setup completes (overrides auto-stop-on-idle)
59
59
60
60
**Behavior:**
61
61
- Reads `./coderaft.json`
62
-
- Creates/starts a box named `coderaft_<name>` where `<name>` comes from `coderaft.json`'s `name` (or the folder name)
62
+
- Creates/starts a Island named `coderaft_<name>` where `<name>` comes from `coderaft.json`'s `name` (or the folder name)
63
63
- Applies ports, env, and volumes from configuration
64
64
- Runs a system update, then `setup_commands`
65
65
- Installs the coderaft wrapper for nice shell UX
66
-
- Records package installations you perform inside the box to `coderaft.lock` (apt/pip/npm/yarn/pnpm). On rebuilds, these commands are replayed to reproduce the environment.
66
+
- Records package installations you perform inside the Island to `coderaft.lock` (apt/pip/npm/yarn/pnpm). On rebuilds, these commands are replayed to reproduce the environment.
67
67
- If global setting `auto_stop_on_exit` is enabled (default), `coderaft up` stops the container right away if it is idle (no exposed ports and only the init process running). Use `--keep-running` to leave it running.
68
68
- When `auto_stop_on_exit` is enabled and your `coderaft.json` does not specify a `restart` policy, coderaft uses `--restart no` to prevent the container from auto-restarting after being stopped.
69
69
@@ -80,7 +80,7 @@ coderaft up --dotfiles ~/.dotfiles
80
80
81
81
### `coderaft init`
82
82
83
-
Create a new coderaft project with its own Docker box (container).
83
+
Create a new coderaft project with its own Docker island.
84
84
85
85
**Syntax:**
86
86
```bash
@@ -91,7 +91,7 @@ coderaft init <project> [flags]
91
91
-`--force, -f`: Force initialization, overwriting existing project
92
92
-`--template, -t <template>`: Initialize from template (python, nodejs, go, web)
Generate a comprehensive environment snapshot as `coderaft.lock.json` for a project. This is ideal for sharing/auditing the exact box image, container configuration, and globally installed packages.
271
+
Generate a comprehensive environment snapshot as `coderaft.lock.json` for a project. This is ideal for sharing/auditing the exact Island image, container configuration, and globally installed packages.
Copy file name to clipboardExpand all lines: docs/src/content/docs/docs/configuration.md
+7-7Lines changed: 7 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -77,16 +77,16 @@ Each project can have a `coderaft.json` file in its workspace directory that def
77
77
Key fields you may use: `name`, `base_image`, `setup_commands`, `environment`, `ports`, `volumes`, `dotfiles`, `working_dir`. Advanced options like `capabilities`, `labels`, `network`, `restart`, `resources`, and `health_check` are supported but optional.
78
78
79
79
:::note
80
-
Regardless of configuration, coderaft always runs `apt update -y && apt full-upgrade -y` first when initializing any box to ensure the system is up to date. Your `setup_commands` will run after this system update.
80
+
Regardless of configuration, coderaft always runs `apt update -y && apt full-upgrade -y` first when initializing any Island to ensure the system is up to date. Your `setup_commands` will run after this system update.
81
81
:::
82
82
83
83
## Reproducible Installs
84
84
---
85
85
86
-
Coderaft automatically records package manager installs you run inside the box to `/workspace/coderaft.lock` (which is your project folder on the host).
86
+
Coderaft automatically records package manager installs you run inside the Island to `/workspace/coderaft.lock` (which is your project folder on the host).
87
87
88
88
Lock file paths:
89
-
- Inside box: `/workspace/coderaft.lock`
89
+
- Inside Island: `/workspace/coderaft.lock`
90
90
- On host: `~/coderaft/<project>/coderaft.lock`
91
91
92
92
The following commands are tracked when they succeed:
@@ -130,7 +130,7 @@ This writes a JSON snapshot (by default to `<workspace>/coderaft.lock.json`) tha
130
130
Usage notes:
131
131
- Commit `coderaft.lock.json` to your repository to share environment details with teammates.
132
132
- This file is an authoritative snapshot for auditing/sharing. The current execution path for rebuilds remains `coderaft.json` + the simple `coderaft.lock` replay file. You can now also use:
133
-
- `coderaft verify <project>` to validate a box matches the lock (fails fast on drift)
133
+
- `coderaft verify <project>` to validate a Island matches the lock (fails fast on drift)
134
134
- `coderaft apply <project>` to configure registries/sources and reconcile package sets to the lock
135
135
- Local app dependencies (e.g. non-global Node packages in your repo) are intentionally not included; rely on your project’s own lockfiles (package-lock.json, yarn.lock, pnpm-lock.yaml, requirements.txt/poetry.lock, etc.).
136
136
@@ -163,7 +163,7 @@ This reads `./coderaft.json` and starts the environment without requiring prior
163
163
164
164
### Dotfile Injection
165
165
166
-
You can mount your personal dotfiles into the box to keep your editor/shell preferences:
166
+
You can mount your personal dotfiles into the Island to keep your editor/shell preferences:
167
167
168
168
```bash
169
169
# One-off via flag
@@ -276,7 +276,7 @@ Global settings are stored in `~/.coderaft/config.json`:
276
276
|--------|------|---------|-------------|
277
277
| `default_base_image` | string | `ubuntu:22.04` | Default base image for new projects |
278
278
| `auto_update` | boolean | `true` | Whether to run updates during initialization |
279
-
| `auto_stop_on_exit` | boolean | `true` | If enabled, coderaft stops a project's box automatically after exiting an interactive shell or finishing a one-off `run` command. Override per-invocation with `--keep-running`. |
279
+
| `auto_stop_on_exit` | boolean | `true` | If enabled, coderaft stops a project's Island automatically after exiting an interactive shell or finishing a one-off `run` command. Override per-invocation with `--keep-running`. |
280
280
281
281
When `auto_stop_on_exit` is enabled:
282
282
- `coderaft up` will also stop the container if it is idle right after setup (no ports exposed and only the init process running), unless `--keep-running` is passed.
0 commit comments