The core of Zero-OS is 0-core, which is the Zero-OS replacement for systemd.
- 0.9.0
- 0.10.0
- 0.11.0
- 1.0.0
- 1.1.0-alpha2 - last release
See the release schedule in the Zero-OS home repository.
To run Zero-OS in a Docker container, just run the following command, which will pull the needed image as well:
docker run --privileged -d --name core -p 6379:6379 g8os/g8os-dev:1.0
To follow the container logs do:
docker logs -f core
Login to your profile at https://itsyou.online and from the settings ( gear icon ) create an API key and copy the values.
- Make sure you are granted acccess to
greenitglobe.development.orchestrators
organization at IYO.
From command line
export CLIENT_ID='<your client id>'
export CLIENT_SECRET='<your secret>'
export ORG=greenitglobe.development.orchestrators
export VALIDITY_IN_SECONDS=3600
export JWT=`curl -s -X POST "https://itsyou.online/v1/oauth/access_token?grant_type=client_credentials&client_id=${CLIENT_ID}&client_secret=${CLIENT_SECRET}&response_type=id_token&scope=user:memberof:${ORG}&validity=${VALIDITY_IN_SECONDS}"`
echo $JWT
Simply replace the CLIENT_ID and CLIENT_SECRET values with your own.
Before using the client make sure the ./client/py-client
is in your PYTHONPATH
.
from client import Client
cl = Client(host='<IP address of Docker container running Zero-OS>', password='<JWT>')
#validate that core0 is reachable
print(cl.ping())
#then u can do stuff like
print(
cl.system('ps -eF').get()
)
print(
cl.system('ip a').get()
)
#client exposes more tools for disk, bridges, and container mgmt
print(
cl.disk.list()
)
- Boot the 0-core as init process
- Manage disks
- Create containers
- Full Namespace isolation
- Host the root filesystem of the containers via ipfs
- Network stack dedicated
- ZeroTier Network integration
- Use flist file format as root metadata
- Remotly administrate the process
- via Python client
- via redis
- change datastore for fuse filesystem from ipfs to Zero-OS Store.
- include of the monitoring of all processes running on the Zero-OS. It produces aggregated statistics on the processes that can be dump into a time series database and displayed used something like Grafana.
- New Flist format, the flist used in the 0-fs is now a distributed as a RocksDB database.
- Creation of the 0-Hub, see https://github.com/zero-os/0-hub
- Improvement of the builtin commands of 0-core and coreX
- Lots and lots of bug fixes
- Containers plugins
- Unprivileged containers (still in beta)
- Libvirt bindings
- Processes API
- Support multiple ZeroTier in container networking
- Support Open vSwitch networking for both containers and KVM domains
corectl
command line tool to manage Zero-OS from within the node
See the milestones in the Zero-OS home repository: Zero-OS Milestones
All documentation is in the /docs
directory, including a table of contents.
In Getting Started with Core0 you find the recommended path to quickly get up and running.