bodman

command module
v0.0.0-...-0c1dd3c Latest Latest
Warning

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

Go to latest
Published: Jan 26, 2021 License: Apache-2.0 Imports: 25 Imported by: 0

README

Bodman

Bodman implements minimum feature set of docker and podman. The original intuition is runing container under systemd more similar to a normal binary.

Inspired by bocker, podman and rkt.

It's only designed for running trusty image. If you find your docker image broken in bodman, just file a issue.

Dependencies

  • ostree

Usage

You must pull you image manully before you use it (Maybe change in future).

bodman pull debian:testing
bodman run debian:testing /bin/bash

Current support run arguments:

NAME:
   bodman run -

USAGE:
   bodman run [command options] [arguments...]

OPTIONS:
   --help                               (default: false)
   --dns value                          (default: "8.8.8.8")
   --dns-option value, --dns-opt value
   --dns-search value
   --env value, -e value
   --hostname value, -h value
   --network value, --net value         (default: "host")
   --systemd-activation                 (default: false)
   --user value, -u value
   --volume value, -v value
   --workdir value, -w value

NOET: Port mapping is broken

Roadmap

  • Fetch local image from docker/podman
  • Maybe: OverlayFS and fuse-overlay
Goal
  • Only support minimum feature, which removes a lot of complexities.
  • Make it using like docker in most cases.
Non Goal
  • PID Namespace: It only works when we fork a new process. That means we need a "supervisor" for the forked process. To simplify the design, just remove PID Namespace support because isolation is not the target.
  • Isolation & Security: It's only designed for running trusty image. And removing features like cpu/memory limitation and capability control can eliminates most part of code.
  • Build Image: It's only a complementary to current container ecosystem. You should still build your image using docker or podman.
  • Daemon: Support running container as a daemon means we need a containerd. Like rkt, you can do it youself using systemd or just using podman or docker.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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