1
- < p align = " center " >< img alt = " sysbox " src = " ./docs/figures/ sysbox.png " width = " 800x " /></ p >
1
+ TODO: modify banner image, add Nestybox logo, call it " sysbox enterprise"
2
2
3
3
## Contents
4
4
5
5
- [ Introduction] ( #introduction )
6
- - [ System Containers] ( #system-containers )
6
+ - [ Free for Individual Developers, Paid for Enterprise] ( #free-for-individual-developers-paid-for-enterprise )
7
+ - [ Key Features] ( #key-features )
7
8
- [ Videos] ( #videos )
8
9
- [ Download] ( #download )
9
10
- [ Supported Distros] ( #supported-distros )
10
11
- [ Host Requirements] ( #host-requirements )
11
- - [ Installation] ( #installation )
12
- - [ Launching a System Container] ( #launching-a-system-container )
13
- - [ Sysbox Features] ( #sysbox-features )
12
+ - [ Installing Sysbox] ( #installing-sysbox )
13
+ - [ Using Sysbox] ( #using-sysbox )
14
14
- [ Documentation] ( #documentation )
15
15
- [ Integration with Container Managers] ( #integration-with-container-managers )
16
- - [ Sysbox is not Rootless Docker] ( #sysbox-is-not-rootless-docker )
17
- - [ Sysbox enhances K8s.io KinD] ( #sysbox-enhances-k8sio-kind )
18
16
- [ Troubleshooting] ( #troubleshooting )
19
17
- [ Filing Issues] ( #filing-issues )
20
18
- [ Support] ( #support )
21
- - [ Roadmap] ( #roadmap )
22
19
- [ We want your feedback] ( #we-want-your-feedback )
23
20
- [ Uninstallation] ( #uninstallation )
24
21
- [ About Nestybox] ( #about-nestybox )
27
24
28
25
## Introduction
29
26
30
- ** Sysbox** is a next-generation container runtime (runc), developed by
31
- [ Nestybox] ( #about-nestybox ) , that enables containers to run not just
32
- micro-services, but also system software such as Docker, Kubernetes, Systemd,
33
- etc., inside the container, ** seamlessly and securely** .
27
+ ** Sysbox Enterprise Edition** (Sysbox-EE) is the enterprise version of the
28
+ open-source [ Sysbox container runtime] ( https://github.com/nestybox/sysbox ) ,
29
+ developed by [ Nestybox] ( https://www.nestybox.com ) .
34
30
35
- Without Sysbox, running such software in a container requires complex images,
36
- custom entrypoints, special volume mounts, and risky privileged containers.
37
- Sysbox removes all of this complexity while ensuring strong container security.
38
- And it's very fast and efficient too.
31
+ Sysbox is a container runtime that enables Docker containers to act as virtual
32
+ servers with full root access and capable of running software such as Systemd,
33
+ Docker, and Kubernetes in them, ** seamlessly and securely** .
39
34
40
- Sysbox sits below container managers such as Docker and Containerd, allowing you to
41
- use these well known tools to deploy the containers. No need to learn new tools!
35
+ Sysbox-EE uses Sysbox at its core, but adds proprietary enterprise-level
36
+ features around lifecycle, security, efficiency, scalability, and robustness
37
+ to the Sysbox core. In addition, Sysbox-EE comes with professional support from
38
+ Nestybox.
42
39
43
- If you want to run Docker, Kubernetes, or Systemd-reliant apps inside Docker
44
- containers, and want to do so easily, with unmatched efficiency, and securely,
45
- ** Sysbox is right for you** .
40
+ ## Free for Individual Developers, Paid for Enterprise
46
41
47
- The complete list of features is [ here] ( #sysbox-features ) .
42
+ Sysbox-EE is ** free for individual developers** , but licensed for enterprise
43
+ use.
48
44
49
- ## System Containers
45
+ That is, if you are an engineer that wants to try Sysbox (at home or at your
46
+ work), it's free. However, if you want to use it as part of the IT
47
+ infrastructure of your company, it's licensed (non-free), so please [ contact us] ( #contact ) .
50
48
51
- We call the containers deployed by Sysbox ** system containers** , to highlight the
52
- fact that they can run not just micro-services (as regular containers do), but
53
- also system software such as Docker, Kubernetes, Systemd, inner containers, etc.
49
+ ## Key Features
54
50
55
- More on system containers [ here] ( docs/user-guide/concepts.md#system-container ) .
51
+ Sysbox-EE includes all of [ Sysbox's features] ( https://github.com/nestybox/sysbox/README.md#sysbox-features ) ,
52
+ and in addition includes the following:
53
+
54
+ ### Lifecycle
55
+
56
+ * Package installer that checks host requirements and eases installation and
57
+ configuration.
58
+
59
+ ### Security
60
+
61
+ * Stronger cross-container isolation (Sysbox-EE assigns exclusive user-ID and
62
+ group-ID ranges to each container).
63
+
64
+ ### Efficiency
65
+
66
+ * Important optimizations for running containers in containers. This speeds
67
+ up container deployment and significantly reduces storage overhead.
68
+
69
+ * For example, with Sysbox (open-source version), a 10-node Kubernetes-in-Docker
70
+ cluster starts in < 3 minutes and consumes up 10GB; with Sysbox-EE starts in
71
+ < 2 minutes and consumes < 1GB of storage overhead.
72
+
73
+ ### Scalability
74
+
75
+ * Higher efficiency means you can launch more containers per host.
76
+
77
+ ### Robustness
78
+
79
+ * Sysbox-EE is tested and hardened for operation in production environments.
56
80
57
81
## Videos
58
82
@@ -64,13 +88,15 @@ We have some sample videos showing Sysbox in action:
64
88
65
89
## Download
66
90
67
- The latest release of Sysbox is [ here] ( https://github.com/nestybox/sysbox-external/releases ) .
91
+ TODO: fix this link with "sysbox-ee"
92
+
93
+ The latest release of Sysbox-EE is [ here] ( https://github.com/nestybox/sysbox-external/releases ) .
68
94
69
95
Installation instructions are below.
70
96
71
97
## Supported Distros
72
98
73
- Sysbox relies on functionality that is currently only present in Ubuntu Linux.
99
+ Sysbox-EE relies on functionality that is currently only present in Ubuntu Linux.
74
100
75
101
See the [ distro compatibility doc] ( docs/distro-compat.md ) for information on what versions
76
102
of Ubuntu kernels are supported.
@@ -79,19 +105,19 @@ We plan to add support for more distros in the future.
79
105
80
106
## Host Requirements
81
107
82
- The Linux host on which Sysbox runs must meet the following requirements:
108
+ The Linux host on which Sysbox-EE runs must meet the following requirements:
83
109
84
110
1 ) It must have one of the supported Linux distros.
85
111
86
112
2 ) Systemd must be the system's process-manager (the default in the supported distros).
87
113
88
114
3 ) Docker must be [ installed natively] ( docs/user-guide/install.md#docker-installation ) (** not** with the Docker snap package).
89
115
90
- ## Installation
116
+ ## Installing Sysbox
91
117
92
118
It's very easy:
93
119
94
- 1 ) Download the latest Sysbox package from the [ release] ( https://github.com/nestybox/sysbox-external/releases ) page.
120
+ 1 ) Download the latest Sysbox-EE package from the [ release] ( https://github.com/nestybox/sysbox-external/releases ) page.
95
121
96
122
2 ) Verify that the checksum of the downloaded file fully matches the expected/published one.
97
123
For example:
@@ -112,7 +138,7 @@ $ docker stop $(docker ps -a -q) && docker container prune -f
112
138
If an error is returned, it simply indicates that no existing containers were
113
139
found.
114
140
115
- 4 ) Install the Sysbox package and follow the installer instructions:
141
+ 4 ) Install the Sysbox-EE package and follow the installer instructions:
116
142
117
143
``` console
118
144
$ sudo apt-get install ./sysbox_0.2.0-0.ubuntu-focal_amd64.deb -y
@@ -122,9 +148,9 @@ More information on the installation process can be found [here](docs/user-guide
122
148
123
149
If you run into problems during install, see the [ troubleshooting doc] ( docs/user-guide/troubleshoot.md ) .
124
150
125
- ## Launching a System Container
151
+ ## Using Sysbox
126
152
127
- Once Sysbox is installed, you launch a system container with Docker as follows:
153
+ Once Sysbox-EE is installed, you launch a system container with Docker as follows:
128
154
129
155
``` console
130
156
$ docker run --runtime=sysbox-runc --rm -it --hostname my_cont debian:latest
@@ -144,65 +170,6 @@ runtime to launch regular containers (rather than system containers). It's
144
170
perfectly fine to run system containers launched with Docker + Sysbox alongside
145
171
regular Docker containers; they won't conflict and can co-exist side-by-side.
146
172
147
- ## Sysbox Features
148
-
149
- ### Integrates with Docker
150
-
151
- - Launch system containers via the Docker CLI, using simple Docker images.
152
-
153
- ### Docker-in-Docker
154
-
155
- - Run Docker inside a container easily and without unsecure privileged containers.
156
-
157
- - Full isolation between the Docker inside the container and the Docker on the host.
158
-
159
- ### Kubernetes-in-Docker
160
-
161
- - ** Easy:** Deploy K8s inside containers, using the K8s.io "kind" tool,
162
- Nestybox's "kindbox" tool, or even simple ` docker run ` commands. See [ here] ( #sysbox-enhances-k8sio-kind ) for more.
163
-
164
- - ** Super efficient:** without Sysbox, a 10-node cluster eats up 10GB; with Sysbox
165
- its eats up 1GB or less. And it can be deployed in under 2 minutes!
166
-
167
- - ** Secure:** avoid using unsecure privileged containers.
168
-
169
- - ** Simple:** Use simple Docker images for the K8s nodes; easily embed any inner pod images into them.
170
-
171
- ### Systemd-in-Docker
172
-
173
- - Run Systemd inside a Docker container easily, without complex container configurations.
174
-
175
- - Enables you to containerize apps that rely on Systemd.
176
-
177
- ### Fast & Efficient
178
-
179
- - Sysbox uses host resources optimally to reduce container startup time and host
180
- storage overhead.
181
-
182
- ### Portable
183
-
184
- - Deploy the containers on bare-metal or a VM.
185
-
186
- - Deploy them on premise, in the cloud, an edge device, or even IoT.
187
-
188
- ### Easily preload inner container images into the system container image.
189
-
190
- - Using a simple Dockerfile or Docker commit.
191
-
192
- ### Strong container isolation
193
-
194
- - No unsecure privileged containers!
195
-
196
- - Root user in the system container maps to a fully unprivileged user on the host.
197
-
198
- - Each system container gets exclusive range of host user IDs (for increased
199
- cross-container isolation).
200
-
201
- - Programs inside the system container (e.g., Docker) are limited
202
- to using the resources given to the system container itself.
203
-
204
- Please see our [ Roadmap] ( #roadmap ) for a list of features we are working on.
205
-
206
173
## Documentation
207
174
208
175
We have several documents to help you get started and get the best out of
@@ -223,68 +190,21 @@ system containers.
223
190
224
191
- [ Issue Guidelines] ( docs/issue-guidelines.md )
225
192
226
- - Guidelines for filing issues in the Sysbox GitHub project site.
193
+ - Guidelines for filing issues in the Sysbox-EE GitHub project site.
227
194
228
195
In addition, the [ Nestybox blog site] ( https://blog.nestybox.com ) has articles
229
196
on how to use system containers.
230
197
231
198
## Integration with Container Managers
232
199
233
- Sysbox is designed to work with Docker.
200
+ Though Sysbox is OCI-based (and thus compatible with OCI container managers),
201
+ it's currently only tested with Docker / containerd.
234
202
235
- We don't yet support using other container managers (e.g., cri-o, etc). to deploy system containers with Sysbox.
203
+ We don't yet support using other container managers to deploy system containers
204
+ with Sysbox.
236
205
237
206
We don't yet support using Kubernetes to deploy system containers with Sysbox.
238
207
239
- ## Sysbox is not Rootless Docker
240
-
241
- Sysbox often gets confused with [ Rootless Docker] ( https://docs.docker.com/engine/security/rootless/ ) , but it's in
242
- fact very different.
243
-
244
- Rootless Docker aims to run the Docker daemon in the host without root
245
- privileges, to mitigate security risks. This however results in a number of
246
- [ limitations] ( https://docs.docker.com/engine/security/rootless/#known-limitations )
247
- on what the Docker daemon can do.
248
-
249
- Sysbox aims to create containers that can run any system software in them easily
250
- and securely. The Docker on the host, as well as Sysbox, require root privileges
251
- to make this possible. Within the containers however, you can run Docker and Kubernetes,
252
- and they will only have privileges within the containers but none on the host.
253
-
254
- What Rootless Docker and Sysbox have in common is that both use the Linux
255
- user-namespace for isolation, but do so in different ways.
256
-
257
- ## Sysbox enhances K8s.io KinD
258
-
259
- The [ K8s.io KinD] ( https://kind.sigs.k8s.io ) project produces a CLI tool called
260
- "kind" that enables deployment of Kubernetes clusters inside Docker containers.
261
-
262
- It's an excellent tool that makes deployment of K8s cluster in containers fast &
263
- easy.
264
-
265
- Sysbox complements this tool. When used with the Sysbox container runtime, the
266
- capabilities of the "kind" tool are enhanced:
267
-
268
- - The containerized K8s clusters consume ** significantly less host
269
- storage** (70% reduction for a 10-node cluster!).
270
-
271
- - The cluster is much more ** secure** (does not require risky privileged containers).
272
-
273
- - You can use Sysbox to ** easily** embed inner pod images into the K8s nodes.
274
-
275
- Moreover, with Sysbox, you can easily create a containerized K8s cluster without
276
- using the K8s.io KinD tool, by using very simple Docker images and Docker run
277
- commands.
278
-
279
- We've created a tool called "kindbox" that is a simple wrapper around Docker
280
- commands to deploy a K8s cluster.
281
-
282
- This results in simple images and gives you full control of the
283
- cluster configuration. The Sysbox runtime does the heavy lifting of ensuring
284
- that K8s runs seamlessly inside the containers.
285
-
286
- The Sysbox [ quickstart-guide] ( docs/quickstart/kind.md ) and [ user-guide] ( docs/user-guide/kind.md ) have more on this.
287
-
288
208
## Troubleshooting
289
209
290
210
Refer to the [ Troubleshooting document] ( docs/user-guide/troubleshoot.md )
@@ -296,39 +216,16 @@ Do [contact us](#contact) if you need any help.
296
216
## Filing Issues
297
217
298
218
We apologize for any problems in the product or documentation, and we appreciate
299
- users filing issues that help us improve Sysbox.
219
+ users filing issues that help us improve Sysbox-EE .
300
220
301
- To file issues with Sysbox (e.g., bugs, feature requests, documentation changes, etc.),
221
+ To file issues with Sysbox-EE (e.g., bugs, feature requests, documentation changes, etc.),
302
222
please refer to the [ issue guidelines] ( docs/issue-guidelines.md ) document.
303
223
304
224
## Support
305
225
306
226
Reach us at our
[ slack channel
] [ slack ] or at
` [email protected] ` for any questions.
307
227
See our [ contact info] ( #contact ) below for more options.
308
228
309
- ## Roadmap
310
-
311
- The following is a list of features in the Sysbox roadmap.
312
-
313
- We list these here so that our users can get a better idea of where we
314
- are going and can give us feedback on which of these they like best
315
- (or least).
316
-
317
- Nestybox reserves the right to change these based on business
318
- priorities.
319
-
320
- Here is the list:
321
-
322
- - Support for more Linux distros.
323
-
324
- - Support for deploying system containers with Kubernetes.
325
-
326
- - Support for other container managers (e.g., cri-o).
327
-
328
- - Exposing host devices within the system container.
329
-
330
- - Running window managers (e.g., X) inside the system container (for GUI apps & desktops).
331
-
332
229
## We want your feedback
333
230
334
231
We love feedback, as it helps us improve Sysbox and set its future
0 commit comments