repositorypackage
0.0.0-20241113060801-43a5aedae6ac
Repository: https://github.com/biraj21/focker.git
Documentation: pkg.go.dev
# README
Focker
Focker is a toy container runtime written in Go, designed to create and manage lightweight Linux containers.
Features
- Namespace Isolation: Uses Linux namespaces to isolate processes, mount points, and hostname.
- Filesystem Handling: Extracts a base Ubuntu 22.04 filesystem tarball for container use.
- Process Management: Runs specified commands inside isolated containers.
- Bind Mounts: Easy file and directory sharing between host and containers
Requirements
- Go (tested with go1.21.5)
- Linux kernel with support for namespaces (tested on Ubuntu 22.04, Pop!_OS)
- Requires root privileges to operate due to its use of Linux namespaces.
Usage
-
Building
go build -o focker
-
Running Containers
sudo ./focker run <command> [args...]