This repo does not contain any source code from ClickOS
, but simply contains the means to build ClickOS
images within a Docker container.
-
sysml
- This tag contains a prebuilt ClickOS image that uses the default build args. The idea for is not only to distribute images, but to make building reproducibly simple.
- To simple get the ClickOS image, run the following command:
docker run --rm -v $(pwd):/output willfantom/clickos:sysml
- To build with arguments defined by you, run the following with any build args you need (stats_level just an example):
docker build --rm -f Dockerfile --build-arg STATS_LEVEL=1 -t clickos:custom .
-
development
- This tag provides an image for ClickOS development. It has the Xen and MiniOS sources and a built toolchain. It only needs you to bring your own ClickOS.
- To get started, from your root ClickOS directory, run:
docker run --rm -it -v $(pwd):/sources/clickos willfantom/clickos:development
- The Xen/MiniOS version can also be important, so change these with the build args if needed.
docker build --rm -f Dockerfile.dev --build-arg MINIOS_BR=<other-br> -t clickos:dev .
- The Xen/MiniOS version can also be important, so change these with the build args if needed.
ARG | Tags | Description | Default |
---|---|---|---|
XEN_REPO |
sysml ,development |
The remote git repo containing the Xen source code | https://github.com/xen-project/xen |
XEN_BR |
sysml ,development |
The branch or tag of the Xen source repo to use | RELEASE-4.11.4 |
MINIOS_REPO |
sysml ,development |
The remote git repo containing the MiniOS source code | https://github.com/sysml/mini-os |
MINIOS_BR |
sysml ,development |
The branch or tag of the MiniOS source repo to use | master |
CLICKOS_REPO |
sysml |
The remote git repo containing the ClickOS source code | https://github.com/willfantom/clickos |
CLICKOS_BR |
sysml |
The branch or tag of the ClickOS source repo to use | latest |
STATS_LEVEL |
sysml |
The stats level to enable for ClickOS: 0 : Normal Stats Level 1 : Collect per-element packet counts 2 : Collect CPU cycles per-element |
0 |
EXTRA_FLAGS |
sysml |
Any extra flags as a string for the configure stage (e.g. --with-netmap --enable-ipsec ) |
The main tag here
sysml
does not use thesysml/clickos
repo currently as it does not compile with themaster
MiniOS branch. It uses pretty much the same code though, just configured so it can compile.