https://github.com/nlf/dhyve-os
a tiny OS for running docker in xhyve
https://github.com/nlf/dhyve-os
Last synced: 21 days ago
JSON representation
a tiny OS for running docker in xhyve
- Host: GitHub
- URL: https://github.com/nlf/dhyve-os
- Owner: nlf
- Created: 2015-07-30T23:00:23.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2016-08-11T12:51:42.000Z (over 8 years ago)
- Last Synced: 2025-03-26T12:11:25.948Z (about 1 month ago)
- Language: Shell
- Homepage:
- Size: 2.87 MB
- Stars: 194
- Watchers: 6
- Forks: 19
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-starred - nlf/dhyve-os - a tiny OS for running docker in xhyve (others)
README
# DhyveOS
DhyveOS is a lightweight Linux distribution made specifically to run [Docker](https://www.docker.com/) containers within the [xhyve](https://github.com/mist64/xhyve) hypervisor on OS X. It runs completely from RAM, is a small ~14MB download and boots in ~5s (YMMV).
## Features
* Uses 9P over virtio to mount your user's home directory so volume mappings work.
* Docker runs on port 2375 without TLS
* Designed for use with [dlite](https://github.com/nlf/dlite)
* Default root password: dhyve
* Default docker user password: docker
* Uses btrfs for the docker filesystem## Building
Building DhyveOS requires docker. To build it, just run `make`. Binaries will be located in the `output` directory.
Downloads and ccache output are stored in named docker volumes to speed up subsequent builds.
Running `make clean` will remove the output directory as well as the intermediate container (if it exists).
`make dist-clean` will additionally remove the base image, as well as the named volumes.
If you'd like to tweak the buildroot configuration, run `make config`. When you save changes they will be copied to the `config` directory appropriately.
To make changes to the kernel configuration, run `make linux-config`. When saving, make sure to specify the filename `/tmp/config/kernel` or your changes will be lost.
## Caveat Emptor
DhyveOS is currently designed and tuned for development. Using it for any kind of production workloads at this time is highly discouraged.