boots

command module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 26, 2025 License: Apache-2.0 Imports: 1 Imported by: 0

README

bootS

As lightweight as a container, as secure as a virtual machine

A Linux server sandbox virtualization CLI tool, spawning and running sandbox according to the OCI specification. boots is inspired by QEMU and runC, with a focus on being:

  • Simple: The command line interface of the tool is simple and clear, and users can quickly start, manage and destroy the sandbox environment with simple commands.
  • Secure: Each sandbox instance runs in an independent kernel environment, ensuring complete isolation between different sandboxes. This isolation mechanism prevents resource conflicts and potential security vulnerabilities, ensuring the security of each sandbox environment.
  • Fast: Lightweight virtualization technology is used to ensure that the sandbox is started and destroyed extremely quickly. Users can start a sandbox environment in seconds and quickly destroy it after completing the task, saving time and resources.
  • Reliable: The tool has built-in high availability and fault tolerance mechanisms to ensure that the sandbox environment can be automatically restored or migrated in the event of a failure. Through redundant design and failover strategies, the tool can ensure the continuous availability of the sandbox.

boots is written in Go and use KVM and virtio as CPU and IO virtualization solutions.

Getting Started

Getting boots

The latest release and setup instructions are available at GitHub.

Building

You can build boots from source:

git clone https://github.com/set-io/boots
cd boots
./make

This will generate a binary called ./boots.

NOTE: you need go 1.22+ and Linux 5.0+. Please check your installation with

go version
uname -a
Usage

Start the first sandbox virtual environment:

./boots create --bundle centos7-x86-64-image sandbox01

This will create a sandbox, complete the initial resource preparation, and make it ready to run at any time, but it is not running yet. You can trigger it to run at any time.

./boots start sandbox01

The start command is used to start a sandbox in the creation state.

There is a simpler way to combine the create and start phases, as follows:

./boots run --bundle centos7-x86-64-image sandbox01

If there are no errors, you have successfully created a virtualized sandbox environment.

./boots exec sandbox01 "ps -lh /"

View the inside of the sandbox or enter the sandbox environment:

./boots exec -t sandbox01

Stop a running sandbox

./boots kill sandbox01

Contact

Contributing

See CONTRIBUTING for details on submitting patches and the contribution workflow.

License

boots is under the Apache 2.0 license. See the LICENSE file for details.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
cli

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL