diff --git a/content/rancher/v2.x/en/concepts/catalogs/_index.md b/content/rancher/v2.x/en/concepts/catalogs/_index.md index f4aa0d4203b..ed62cb3b059 100644 --- a/content/rancher/v2.x/en/concepts/catalogs/_index.md +++ b/content/rancher/v2.x/en/concepts/catalogs/_index.md @@ -1,57 +1,77 @@ --- -title: Catalogs +title: Catalogs and Charts weight: 2250 --- -Rancher catalog builds on an enhanced version of Helm. All upstream Helm charts can work within Rancher, but Rancher adds several enhancements to improve the user experience. +_Catalogs_ are GitHub repositories filled with applications that are ready-made for deployment. -### Catalog Git Repositories +Applications are bundled in objects called _charts_, which are a packaging format popularized by [Helm](https://docs.helm.sh/). Think of them as templates for deployments. Per Helm, charts are: -Rancher stores Helm charts in git repositories to expedite the fetch and update of charts. In Rancher 2.0, only global catalogs are supported. Support for cluster-level and project-level charts will be added in the future. +>A collection of files that describe a related set of Kubernetes resources. A single chart might be used to deploy something simple, like a memcached pod, or something complex, like a full web app stack with HTTP servers, databases, caches, and so on. -### Enhanced Revision Tracking +Rancher improves on Helm catalogs and charts. All native Helm charts can work within Rancher, but Rancher adds several enhancements to improve their user experience. -While Helm supports versioned deployments, Rancher added capabilities to track and display what exactly changed between different revisions. +## Catalog Types -### Streamlined Application Launch +Within Rancher, you can access several different catalogs either by default or through customization. Enable or disable these catalogs by opening the **Global** view and then selecting **Catalogs** from the main menu. -Rancher supports simplified README files and questions files to streamline the application launch process. Users need not read through the entire list of Helm variables to understand how to launch an application. +- **Library** -### Application Resource Management + The Library Catalog includes charts curated by Rancher. Rancher stores charts in a git repository to expedite the fetch and update of charts. In Rancher 2.0, only global catalogs are supported. Support for cluster-level and project-level charts will be added in the future. + + This catalog features Rancher Charts, which include some [notable advantages](#chart-types) over native Helm charts. -Rancher tracks all the resources created by a specific application. Users can easily navigate to and troubleshoot on a page listing all the workload objects used to power an application. +- **Helm Stable** -### Custom Catalogs + This catalog includes native [Helm charts](https://github.com/kubernetes/helm/blob/master/docs/chart_template_guide/getting_started.md), both of which are maintained by the Kubernetes community. This catalog features the largest pool of apps, but is also the most complex way to deploy charts within Rancher. -Creating a custom catalog for Rancher is straightforward. The catalogs are hosted in Git repositories and cloned into Rancher periodically. +- **Helm Incubator** -The charts themselves are standard [Helm templates](https://github.com/kubernetes/helm/blob/master/docs/chart_template_guide/getting_started.md), with a few differences outlined below. + Similar in user experience to Helm Stable, but this catalog is filled with applications in BETA. -##### Rancher Chart Structure +- **Custom** -Before you create your own custom catalog, you should have a basic understanding about how a Rancher chart differs from a standard chart. + Finally, you have the option of building your own catalogs. Custom catalogs are useful when you have a handful of apps that you deploy regularly in a specific configuration. + +### Custom Catalog Creation + +Creating a custom catalog for Rancher is straightforward. Create a Git Repo and then direct Rancher toward the repo. -Rancher charts differ slightly from native Helm charts in their directory structures. Rancher charts include two files that native Helm charts do not. +For step-by-step directions, see [placeholder](placeholder). -- `app-readme.md` - - A file that provides a high level overview, which displays within Rancher. +When you're done creating the catalog, populate it charts. See [Custom Chart Creation](#custom-chart-creation). - **Example: `app-readme.md` Rancher Output** +## Chart Types -  - -- `questions.yml` - - A file containing questions to prompt the user with. +Rancher supports two different types of charts: - **Example: `questions.yml` Rancher Output** +- **Helm Charts** -  + Native Helm charts include an application along with other software required to run it. When deploying native Helm charts, you'll learn the chart's parameters and then configure them using **Answers**, which are sets of key value pairs. ->**Tip:** Though we recommend using Rancher charts, you can use native Helm repositories as well. + The Helm Stable and Helm Incubators are populated with native Helm charts. However, you can also use native Helm charts in Custom catalogs (although we recommend Rancher Charts). -The following table lists each file and sub-directory found in a Rancher chart directory: `charts/%application%/%app version%/` +- **Rancher Charts** + + Rancher charts mirror native helm charts, although they add two files that enhance user experience: `app-readme.md` and `questions.yaml`. Read more about them in [Rancher Chart Additional Files](#rancher-chart-additional-files) + + Advantages of Rancher charts include: + + - **Enhanced Revision Tracking** + + While Helm supports versioned deployments, Rancher adds tracking and revision history to display changes between different versions of the chart. + + - **Streamlined Application Launch** + + Rancher charts add simplified chart descriptions and configuration forms to make catalog application deployment easy. Rancher users need not read through the entire list of Helm variables to understand how to launch an application. + + - **Application Resource Management** + + Rancher tracks all the resources created by a specific application. Users can easily navigate to and troubleshoot on a page listing all the workload objects used to power an application. + +### Chart Directory Structure + +The following table demonstrates the directory structure for a chart, which can be found in a chart directory: `charts/%application%/%app version%/`. This information is helpful when customizing charts for a custom catalog. Files denoted with **Rancher Specific** are specific to Rancher charts, but are optional for chart customization.
| - | app-readme |
+ app-readme.md |
Rancher Specific: Text displayed within Rancher. |
questions.yml |
- Rancher Specific: File containing questions displayed within Rancher. | +Rancher Specific: File containing questions displayed within Rancher. | |
| @@ -102,31 +122,30 @@ The following table lists each file and sub-directory found in a Rancher chart d |