Lightweight operating system using Node.js as userspace.
Node-os wants to bring npm to the entire system. Any package in npm is a node-os package, which at last count was 94,070 packages. The goal of node-os is to provide just enough to let npm provide the rest. Since anyone can contribute to npm, anyone can create node-os packages.
- Web: please use github issues for discussion
- IRC: join
#node-os
on Freenode
- node-os.com
- quick start tutorial
- build from source with docker
- view packages for node-os on npkg.org
NodeOS is a Node.js based operating system, built off of the Linux kernel. The eventual goal of NodeOS is to produce images that can be run on
- hardware
- cloud providers like Joyent/Amazon/Rackspace
- local virtual machines, like VirtualBox, VMWare, and KVM
- PaaS providers like Heroku, or Joyent's Manta
- container providers, like Docker
Core development is being done in layers:
- Layer-0 provides the boot loader and kernel (currently provided by Docker)
- Layer-1 provides the basic Linux structure
- Layer-2 provides the Node.js binary and its required shared libraries
- Layer-3 provides the core NodeOS additions, like the bootstrapping script
- Layer-4 is for customizing distributions, like the init daemon and package manager
If you are hacking on NodeOS, you are likely building Layer-4 images.
Layer-4 images can be build entirely from a Dockerfile
,
where as the other layers require more finesse.
- Please first Install Docker
-
One Liner
sudo docker run -t -i nodeos/nodeos
-
or learn how to make a Custom Build
Warning: the build process is hairy, it prob. won't work the first time. I'm working on that.
git clone git@github.com:NodeOS/Docker-NodeOS.git
cd Docker-NodeOS
./build
The steps are similar to Docker ones, just type
PLATFORM=qemu ./build