• This repository has been archived on 08/Feb/2021
  • Stars
    star
    1,984
  • Rank 23,353 (Top 0.5 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created over 9 years ago
  • Updated almost 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

HyperContainer Daemon

Build Status

HyperContainer - Hypervisor-agnostic Docker Runtime

This repo contains two parts: the daemon of HyperContainer hyperd and the CLIhyperctl.

What is HyperContainer?

HyperContainer is a hypervisor-agnostic technology that allows you to run Docker images on plain hypervisor.

Why HyperContainer?


HyperContainer combines the best from both worlds: VM and Container.

- Container VM HyperContainer
Isolation Weak, shared kernel Strong, HW-enforced Strong, HW-enforced
Portable Yes, but kernel dependent sometimes No, hypervisor dependent Yes, hypervisor agnostic and portable image
Boot Fast, sub-second Slow, tens of seconds Fast, sub-second
Performance Great OK Good, minimal resource footprint and overhead
Immutable Yes No, configuration management required Yes, only kernel+image
Image Size Small, MBs Big, GBs Small, MBs
Compatibility No, need new tools Great, everything just works Good, it is still a "Machine", much less changes
Mature Not yet Production ready, SDN, SDS, LiveMigration, etc. Yes, just plug-&-play
ROI Rebuild everything with container - Reuse your virtual infrastructure

*BYOK = bring your own kernel

Requirements

  • QEMU 2.0 or later (QEMU 2.6 or later for ARM64 Architecture)
  • Xen 4.5 and VT enabled host (for Xen support)

Installation

Ensure you are running Linux (kernel 3.8 or later) and have QEMU (version 2.0 or later) installed. Then download the binaries and install them (hyper-container and hyperstart) directly.

For the detail of installation, please refer to the documents.

For information on using the command line, just type hyperctl. You may use hyperctl <command> --help for detailed information on any specific command.

Build From Source

Clone hyperd in GoPath

> mkdir -p ${GOPATH}/src/github.com/hyperhq
> cd ${GOPATH}/src/github.com/hyperhq
> git clone https://github.com/hyperhq/hyperd.git hyperd

And make sure you have go (>= 1.7) , device-mapper-devel, and autotools, go into the hyperd dir

> ./autogen.sh
> ./configure
> make

Then you can find the binaries hyperd daemon and hyperctl cmdline tool in current directory. Before running those commands, a config file needs to be placed at /etc/hyper/config directory, and you can find a sample under ${TOP}/package/dist/etc/hyper/config. Kernel and Initrd are required for starting the hyperd daemon, you can find those files from HyperStart project.

Find out more

Contact Us

Found a bug, want to suggest a feature, or have a question? File an issue. When reporting a bug, please include which version of hyperd you are running, as shown by hyperctl --version.

More Repositories

1

runv

Hypervisor-based Runtime for OCI
Go
824
star
2

hypercli

Command line tool for the Hyper.sh platform.
Go
171
star
3

hyperstart

The tiny Init service for HyperContainer
C
135
star
4

docs.hypercontainer.io

HyperContainer Documentation
35
star
5

kubestack

OpenStack Network Provider for Kubernetes
Go
26
star
6

hykins

The Serverless Jenkins Distro
Shell
22
star
7

hyper.sh-connector-k8s

Hyper.sh Container Connector for Kubernetes
TypeScript
22
star
8

faas-hyper

Enable Hyper.sh as a backend for OpenFaaS (Functions as a Service) https://github.com/alexellis/faas
Go
22
star
9

docs.hyper.sh-hyper

Hyper.sh User Guide
Shell
19
star
10

docs.hypernetes.com

Hypernetes documentation.
19
star
11

pi

CLI for Pi
Go
13
star
12

www.hyper.sh

Hyper.sh Website
CSS
12
star
13

hyper-installer

Install script for HyperContainer daemon and CLI
Shell
9
star
14

hypernova

A HyperContainer driver for OpenStack Nova
Python
8
star
15

www.hypercontainer.io

HyperContainer Website
HTML
5
star
16

kube-dns

Kubernetes DNS service with per-namespace support.
Go
4
star
17

blog.hyper.sh

Hyper.sh Blog
CSS
4
star
18

hykins-docs

4
star
19

websocket-client

Go
4
star
20

loadbalancer

loadbalancer on hyper.sh
Go
4
star
21

official-images

the Hyper official images
Shell
3
star
22

hyper-commons-plugin

API plugin for integrate Jenkins with Hyper_
Java
2
star
23

hyper-slaves-plugin

Hyper_ Slaves Plugin for Jenkins.
Java
2
star
24

Hyper_Rocket.Chat

2
star
25

hyper-build-step-plugin

Build step plugin for integrate Jenkins with Hyper.sh
Java
2
star
26

pressuretest

A pressure test repo for Hyper_
Go
1
star
27

hypercontainer-utils

Common utilities for HyperContainer repos
Go
1
star
28

jenkins-image-slave

Shell
1
star