Files
container/examples/ctr-example/README.md
T
Ihor Dvoretskyi 6b8fe3b43f Update example documentation (#406)
- Added README.md for examples directory to provide an overview and
instructions.
- Updated ctr-example README.md with clearer build and run instructions.
- Improved lab.md with a dynamic command to fetch the latest kernel.

Signed-off-by: Ihor Dvoretskyi <ihor@linux.com>
2025-11-12 14:30:01 -08:00

47 lines
1.3 KiB
Markdown

# Container Example
Very basic example of launching a Linux container using Containerization.
## Build and Run
### 1. Fetch Kernel
In your terminal, change directories to examples/ctr-example and run:
**Option A: Using Makefile (recommended)**
```bash
make fetch-default-kernel
```
**Option B: Copy from installed container tool**
```bash
cp "$(ls -t ~/Library/Application\ Support/com.apple.container/kernels/vmlinux-* | head -1)" ./vmlinux
```
You should now see the `vmlinux` image in examples/ctr-example
### 2. Build/Run ctr-example
From examples/ctr-example run
`make all`
> [!WARNING]
> If you get the following error, try building from the default macOS terminal:
> `error: compiled module was created by a newer version of the compiler`
After the build completes, the example will run. In your terminal you should see something like:
```
Starting container example...
Fetching container initial filesystem...
Creating container from docker.io/library/alpine:3.16...
Starting container...
/ #
```
> [!WARNING]
> If you get the following error, try moving the `ctr-example` binary to `/var/tmp` and run it from there.
> `Swift/ErrorType.swift:254: Fatal error: Error raised at top level: unsupported: "failed to create vmnet network with status vmnet_return_t(rawValue: 1001)"`
**Congratulations, you've started the example container!**