Skip to content

Commit

Permalink
improve readme for contributor experience
Browse files Browse the repository at this point in the history
  • Loading branch information
sebgoa committed Nov 15, 2016
1 parent 05d067d commit ec02f3b
Showing 1 changed file with 84 additions and 94 deletions.
178 changes: 84 additions & 94 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,19 @@

[![Submit Queue Widget]][Submit Queue] [![GoDoc Widget]][GoDoc] [![Coverage Status Widget]][Coverage Status]

<img src="https://github.com/kubernetes/kubernetes/raw/master/logo/logo.png" width="100">

[Submit Queue]: http://submit-queue.k8s.io/#/e2e
[Submit Queue Widget]: http://submit-queue.k8s.io/health.svg?v=1
[GoDoc]: https://godoc.org/k8s.io/kubernetes
[GoDoc Widget]: https://godoc.org/k8s.io/kubernetes?status.svg
[Coverage Status]: https://coveralls.io/r/kubernetes/kubernetes
[Coverage Status Widget]: https://coveralls.io/repos/kubernetes/kubernetes/badge.svg

### Are you ...

* Interested in learning more about using Kubernetes? Please see our user-facing documentation on [kubernetes.io](http://kubernetes.io) or try the [Scalable Microservices with Kubernetes](https://www.udacity.com/course/scalable-microservices-with-kubernetes--ud615) course
* Interested in hacking on the core Kubernetes code base? Keep reading!
## Introduction

<hr>

Kubernetes is an open source system for managing [containerized applications](https://github.com/kubernetes/kubernetes/wiki/Why-Kubernetes%3F#why-containers) across multiple hosts,
providing basic mechanisms for deployment, maintenance, and scaling of applications.
Kubernetes is an open source system for managing [containerized applications](http://kubernetes.io/docs/whatisk8s/) across multiple hosts,
providing basic mechanisms for deployment, maintenance, and scaling of applications. Kubernetes is hosted by the Cloud Native Computing Foundation ([CNCF](https://www.cncf.io))

Kubernetes is:

Expand All @@ -26,138 +23,131 @@ Kubernetes is:
* **extensible**: modular, pluggable, hookable, composable
* **self-healing**: auto-placement, auto-restart, auto-replication

Kubernetes builds upon a [decade and a half of experience at Google running production workloads at scale](https://research.google.com/pubs/pub43438.html), combined with best-of-breed ideas and practices from the community.
Kubernetes builds upon a decade and a half of experience at Google running production workloads at scale using a system called [Borg](https://research.google.com/pubs/pub43438.html), combined with best-of-breed ideas and practices from the community.

<hr>

### Kubernetes is ready for Production !

Since the Kubernetes 1.0 release in July 2015 Kubernetes is ready for your production workloads. Check the [case studies](http://kubernetes.io/case-studies/).

### Kubernetes can run anywhere !

You can run Kubernetes on your local workstation, cloud providers (e.g. GCE, AWS, Azure), on-premises virtual machines and physical hardware. Essentially, anywhere Linux runs you can run Kubernetes. Checkout the [deployment solutions](http://kubernetes.io/docs/getting-started-guides/) for details.

<hr>

### Kubernetes is ready for Production!
### Are you ...

* Interested in learning more about using Kubernetes? Please see our user-facing documentation on [kubernetes.io](http://kubernetes.io). Try our [interactive tutorial](http://kubernetes.io/docs/tutorials/kubernetes-basics/) or take a free course on [Scalable Microservices with Kubernetes](https://www.udacity.com/course/scalable-microservices-with-kubernetes--ud615).
* Interested in hacking on the core Kubernetes code base, developing tools using the Kubernetes API or helping in anyway possible ? Keep reading!

Since the Kubernetes 1.0 release in July 2015 Kubernetes is ready for your production workloads.
## Code of Conduct

### Kubernetes can run anywhere!
The Kubernetes community abides by the CNCF [code of conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md). Here is an excerpt:

You can run Kubernetes on your local workstation under Vagrant, cloud providers (e.g. GCE, AWS, Azure), and physical hardware. Essentially, anywhere Linux runs you can run Kubernetes. Checkout the [Getting Started Guides](http://kubernetes.io/docs/getting-started-guides/) for details.
_As contributors and maintainers of this project, and in the interest of fostering an open and welcoming community, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities._

## Concepts
## Concepts Overview

Kubernetes works with the following concepts:

[**Cluster**](docs/admin/README.md)
: A cluster is a set of physical or virtual machines and other infrastructure resources used by Kubernetes to run your applications. Kubernetes can run anywhere! See the [Getting Started Guides](docs/getting-started-guides/) for instructions for a variety of services.
[**Cluster**](http://kubernetes.io/docs/admin/)
: A cluster is a set of physical or virtual machines and other infrastructure resources used by Kubernetes to run your applications.

[**Node**](docs/admin/node.md)
[**Node**](http://kubernetes.io/docs/admin/node/)
: A node is a physical or virtual machine running Kubernetes, onto which pods can be scheduled.

[**Pod**](docs/user-guide/pods.md)
[**Pod**](http://kubernetes.io/docs/user-guide/pods/)
: Pods are a colocated group of application containers with shared volumes. They're the smallest deployable units that can be created, scheduled, and managed with Kubernetes. Pods can be created individually, but it's recommended that you use a replication controller even if creating a single pod.

[**Replication controller**](docs/user-guide/replication-controller.md)
[**Replication controller**](http://kubernetes.io/docs/user-guide/replication-controller/)
: Replication controllers manage the lifecycle of pods. They ensure that a specified number of pods are running
at any given time, by creating or killing pods as required.

[**Service**](docs/user-guide/services.md)
[**Service**](http://kubernetes.io/docs/user-guide/services/)
: Services provide a single, stable name and address for a set of pods.
They act as basic load balancers.

[**Label**](docs/user-guide/labels.md)
[**Label**](http://kubernetes.io/docs/user-guide/labels/)
: Labels are used to organize and select groups of objects based on key:value pairs.

## Documentation
## Community

Kubernetes documentation is organized into several categories.
Do you want to help " shape the evolution of technologies that are container packaged, dynamically scheduled and microservices oriented? ". If you are a company, you should consider joining the [CNCF](https://cncf.io/about). For details about who's involved and how Kubernetes plays a role, read [the announcement](https://cncf.io/news/announcement/2015/07/new-cloud-native-computing-foundation-drive-alignment-among-container).

- **Getting started guides**
- for people who want to create a Kubernetes cluster
- in [Creating a Kubernetes Cluster](http://kubernetes.github.io/docs/getting-started-guides/)
- for people who want to port Kubernetes to a new environment
- in [Getting Started from Scratch](http://kubernetes.github.io/docs/getting-started-guides/scratch/)
- **User documentation**
- for people who want to run programs on an existing Kubernetes cluster
- in the [Kubernetes User Guide: Managing Applications](http://kubernetes.github.io/docs/user-guide/)
*Tip: You can also view help documentation out on [http://kubernetes.io/docs/](http://kubernetes.io/docs/).*
- the [Kubectl Command Line Interface](http://kubernetes.io/docs/user-guide/kubectl-overview/) is a detailed reference on
the `kubectl` CLI
- [User FAQ](https://github.com/kubernetes/kubernetes/wiki/User-FAQ)
- **Cluster administrator documentation**
- for people who want to create a Kubernetes cluster and administer it
- in the [Kubernetes Cluster Admin Guide](http://kubernetes.io/docs/admin/)
- **Developer and API documentation**
- for people who want to write programs that access the Kubernetes API, write plugins
or extensions, or modify the core Kubernetes code
- in the [Kubernetes Developer Guide](docs/devel/README.md)
- see also [notes on the API](docs/api.md)
- see also the [API object documentation](docs/api-reference/README.md), a
detailed description of all fields found in the core API objects
- **Walkthroughs and examples**
- hands-on introduction and example config files
- in the [user guide](http://kubernetes.github.io/docs/user-guide/)
- in the [docs/examples directory](examples/)
- **Contributions from the Kubernetes community**
- in the [docs/contrib directory](contrib/)
- **Design documentation and design proposals**
- for people who want to understand the design of Kubernetes, and feature proposals
- design docs in the [Kubernetes Design Overview](docs/design/README.md) and the [docs/design directory](docs/design/)
- proposals in the [docs/proposals directory](docs/proposals/)
- **Wiki/FAQ**
- in the [wiki](https://github.com/kubernetes/kubernetes/wiki)
- troubleshooting information in the [troubleshooting guide](http://kubernetes.io/docs/troubleshooting/)

## Community, discussion, contribution, and support

See which companies are committed to driving quality in Kubernetes on our [community page](http://kubernetes.io/community/).

Do you want to help "shape the evolution of technologies that are container packaged, dynamically scheduled and microservices oriented?"

You should consider joining the [Cloud Native Computing Foundation](https://cncf.io/about). For details about who's involved and how Kubernetes plays a role, read [their announcement](https://cncf.io/news/announcement/2015/07/new-cloud-native-computing-foundation-drive-alignment-among-container).

### Code of conduct

Participation in the Kubernetes community is governed by the [Kubernetes Code of Conduct](code-of-conduct.md).

### Are you ready to add to the discussion?

We have presence on:
Join us on social media and read our blog:

* [Twitter](https://twitter.com/kubernetesio)
* [Google+](https://plus.google.com/u/0/b/116512812300813784482/116512812300813784482)
* [Blogger](http://blog.kubernetes.io/)

You can also view recordings of past events and presentations on our [Media page](http://kubernetes.io/media/).
* [Blog](http://blog.kubernetes.io/)

For Q&A, our threads are at:
Ask questions and help answer them on:

* [Stack Overflow](http://stackoverflow.com/questions/tagged/kubernetes)
* [Slack](http://slack.k8s.io/)

### Want to contribute to Kubernetes?
Attend our key events:

If you're interested in being a contributor and want to get involved in developing Kubernetes, start in the [Kubernetes Developer Guide](docs/devel/README.md) and also review the [contributor guidelines](CONTRIBUTING.md).
* [kubecon](http://events.linuxfoundation.org/events/kubecon)
* [cloudnativecon](http://events.linuxfoundation.org/events/cloudnativecon)
* weekly [community meeting](https://github.com/kubernetes/community/blob/master/community/README.md)

Or, if you just have an idea for a new feature, see the [Kubernetes Features](https://github.com/kubernetes/features) repository for details on how to propose it.
Join a Special Interest Group ([SIG](https://github.com/kubernetes/community))

Also, please see our [expectations](docs/devel/community-expectations.md) for members of
the Kubernetes community.
## Contribute

### Support
If you're interested in being a contributor and want to get involved in developing Kubernetes, get started with this light reading:

While there are many different channels that you can use to get ahold of us, you can help make sure that we are efficient in getting you the help that you need.
* The community [expectations](docs/devel/community-expectations.md)
* The [contributor guidelines](CONTRIBUTING.md)
* The [Kubernetes Developer Guide](docs/devel/README.md)

If you need support, start with the [troubleshooting guide](docs/troubleshooting.md#getting-help) and work your way through the process that we've outlined.
You will then most certainly gain a lot from joining a [SIG](https://github.com/kubernetes/community), attending the regular hangouts as well as the community [meeting](https://github.com/kubernetes/community/blob/master/community/README.md).

That said, if you have questions, reach out to us one way or another. We don't bite!
If you have an idea for a new feature, see the [Kubernetes Features](https://github.com/kubernetes/features) repository for a list of features that are coming in new releases as well as details on how to propose one.

### Community resources
## Documentation

* **Awesome-kubernetes** - [http://ramitsurana.github.io/awesome-kubernetes](http://ramitsurana.github.io/awesome-kubernetes)
The Kubernetes [documentation](http://kubernetes.io/docs/) is organized into several categories.

You can find more projects, tools and articles related to Kubernetes on the [awesome-kubernetes](https://github.com/ramitsurana/awesome-kubernetes) list. Add your project there and help us make it better.
- **Getting started guides**
- For people who want to create a Kubernetes cluster
- See [Creating a Kubernetes Cluster](http://kubernetes.github.io/docs/getting-started-guides/)
- For people who want to port Kubernetes to a new environment
- See [Getting Started from Scratch](http://kubernetes.github.io/docs/getting-started-guides/scratch/)
- **User documentation**
- For people who want to run programs on an existing Kubernetes cluster
- See the [Kubernetes User Guide: Managing Applications](http://kubernetes.github.io/docs/user-guide/)
- **Administrator documentation**
- For people who want to administer a Kubernetes cluster
- See the [Kubernetes Cluster Admin Guide](http://kubernetes.io/docs/admin/)
- **Developer and API documentation**
- For people who want to write programs that access the Kubernetes [API](docs/api.md), write plugins
or extensions, or modify the core Kubernetes code
- See the [Kubernetes Developer Guide](docs/devel/README.md)
- **Walkthroughs and examples**
- For Hands-on introduction and example config files
- See the [user guide](http://kubernetes.github.io/docs/user-guide/)
- See the [examples](examples/) directory
- **Contributions from the Kubernetes community**
- See the [contrib](contrib/) repository
- See the [incubator](https://github.com/kubernetes-incubator) organisation
- **Design documentation and design proposals**
- For people who want to understand the design of Kubernetes, and feature proposals
- See the design docs in the [Kubernetes Design Overview](docs/design/README.md) and the [design](docs/design/) directory
- See the proposals in the [proposals](docs/proposals/) directory
- **Wiki/FAQ**
- For general developer information see the [wiki](https://github.com/kubernetes/kubernetes/wiki)
- For user and admin frequently asked questions, see the [troubleshooting guide](http://kubernetes.io/docs/troubleshooting/)

* **CoreKube** - [https://corekube.com](https://corekube.com):
## Support

Instructive & educational resources for the Kubernetes community. By the community.
While there are many different channels that you can use to get hold of us ([Slack](http://slack.k8s.io/), [Stack Overflow](http://stackoverflow.com/questions/tagged/kubernetes), [Issues](https://github.com/kubernetes/kubernetes/issues/new), [Forums/Mailing lists](https://groups.google.com/forum/#!forum/kubernetes-users)), you can help make sure that we are efficient in getting you the help that you need.

* **Community Documentation**
If you need support, start with the [troubleshooting guide](http://kubernetes.io/docs/troubleshooting/) and work your way through the process that we've outlined.

Here you can learn more about the current happenings in the [kubernetes community](https://github.com/kubernetes/community).
That said, if you have questions, reach out to us one way or another. We don't bite!

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/README.md?pixel)]()

0 comments on commit ec02f3b

Please sign in to comment.