GithubHelp home page GithubHelp logo

kryndex / runtime-1 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from clearcontainers/runtime

0.0 2.0 0.0 13.23 MB

OCI (Open Containers Initiative) compatible runtime using Virtual Machines

License: Apache License 2.0

Shell 9.60% Makefile 3.34% Go 87.06%

runtime-1's Introduction

Build Status Build Status Build Status Go Report Card Coverage Status

runtime

Introduction

cc-runtime is the next generation of Intel® Clear Containers runtime.

This tool, henceforth referred to simply as "the runtime", builds upon the virtcontainers project to provide a high-performance standards-compliant runtime that creates hardware-virtualized containers which leverage Intel's VT-x technology.

It is a re-implementation of cc-oci-runtime written in the go language and supersedes cc-oci-runtime starting from 3.0.0.

The runtime is both OCI-compatible and CRI-O-compatible, allowing it to work seamlessly with both Docker and Kubernetes respectively.

License

The code is licensed under an Apache 2.0 license.

See the license file for further details.

Hardware requirements

The runtime has a built-in command to determine if your host system is capable of running an Intel® Clear Container. Simply run:

$ cc-runtime cc-check

Note:

If you run the command above as the root user, further checks will be performed (e.g. check if another incompatible hypervisor is running):

$ sudo cc-runtime cc-check

Quick start for users

See the installation guides available for various operating systems.

Quick start for developers

See the developer's installation guide.

Community

See the contributing document.

Configuration

The runtime uses a single configuration file called configuration.toml. Since the runtime supports a stateless system, it checks for this configuration file in multiple locations. The default location is /usr/share/defaults/clear-containers/configuration.toml for a standard system. However, if /etc/clear-containers/configuration.toml exists, this will take priority.

To see which paths the runtime will check for a configuration source, run:

$ cc-runtime --cc-show-default-config-paths

To see details of your systems runtime environment (including the location of the configuration file being used), run:

$ cc-runtime cc-env

Logging

The runtime provides --log= and --log-format= options. However, you can also configure it to log to the system log (syslog or journald) such that all log data is sent to both the specified logfile and the system log. The latter is useful as it is independent of the lifecycle of each container.

To view runtime log output:

$ sudo journalctl -t cc-runtime

To view shim log output:

$ sudo journalctl -t cc-shim

To view proxy log output:

$ sudo journalctl -t cc-proxy

Note:

The proxy log entries also include output from the agent (cc-agent) and the hypervisor, which includes the guest kernel boot-time messages.

Debugging

The runtime, the shim (cc-shim), the proxy (cc-proxy), and the hypervisor all have separate enable_debug= debug options in the configuration file. All of these debug options are disabled by default. See the comments in the installed configuration file for further details.

If you want to enable debug for all components, assuming a standard configuration file path, run:

$ sudo sed -i -e 's/^#\(enable_debug\).*=.*$/\1 = true/g' /usr/share/defaults/clear-containers/configuration.toml

See the agent debug document and the kernel debug document for further details.

Limitations

See the limitations file for further details.

Home Page

The canonical home page for the project is: https://github.com/clearcontainers

runtime-1's People

Contributors

jodh-intel avatar jcvenegas avatar amshinde avatar mcastelino avatar chavafg avatar dvoytik avatar ace-tang avatar gabyct avatar gorozco1 avatar grahamwhaley avatar wcwxyz avatar allencloud avatar guangxuli avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.