- Notifications
You must be signed in to change notification settings - Fork9
A tiny tool to manage containers (inspired by docker).
NotificationsYou must be signed in to change notification settings
0xc0d/vessel
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
A tiny educational-purpose project to create containers, written in Go.
It basically is a tiny version of docker, it uses neithercontainerd norrunc. Only a set of the Linux features.
Vessel supports:
- Control Groups for resource restriction (CPU, Memory, Swap, PIDs)
- Namespace for global system resources isolation (Mount, UTS, Network, IPS, PID)
- Union File System for branches to be overlaid in a single coherent file system. (OverlayFS)
Here is the list of blog posts I've written about vessel:
- Build Containers From Scratch in Go (Part 1: Namespaces)
- To be continued...
go get -u github.com/0xc0d/vessel
Usage: vessel [command]Available Commands: exec Run a command inside a existing Container. help Help about any command images List local images ps List Containers run Run a command inside a new Container.
Run/bin/sh
inalpine:latest
vessel run alpine /bin/shvessel run alpine # same as above due to alpine default command
Restart Nginx service inside a container with ID: 123456789123
vessel exec 1234567879123 systemctrl restart nginx
List running containers
vessel ps
List local images
vessel images
vessel, obviously, is not a production ready container manager tool.
About
A tiny tool to manage containers (inspired by docker).
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Contributors2
Uh oh!
There was an error while loading.Please reload this page.