ChartMuseum Installation


ChartMuseum Installation

In this tutorial, we are going to discuss about ChartMuseum installation and make use of it as part of helm chart repository hosting. ChartMuseum can be downloaded from this specific location for various type of operating systems and a detailed instruction is available as a part of the documentation as well.

Within how to run section I do have the tab and within the installation location I do have the location for Chart Museum for various operating systems. Since I do have the Linux operating system I can download from this specific location. Let me go ahead and download.

$ curl -LO https://s3.amazonaws.com/chartmuseum/release/latest/bin/linux/amd64/chartmuseum

And it’s around 52 MB. So let this get downloaded. Now, I need to add execute permission for this particular file. Let me go ahead and add execute permission.

$ chmod +x ./chartmuseum

And let me move this particular file into the /usr/local/bin. So that I can provide the chartmuseum command from any location.

$ mv ./chartmuseum /usr/local/bin

Once the file is moved, I should be in a position to provide the chartmuseum command from any location. Let me try to get the version that we do have.

$ chartmuseum --version
ChartMuseum version 0.12.0 (build 101e26a)

The version that is installed over here is 0.12.0. That’s the latest version.

Configuration

Show all CLI options with chartmuseum --help. Common configurations can be seen below.

All command-line options can be specified as environment variables, which are defined by the command-line option, capitalized, with all -’s replaced with _’s.

For example, the env var STORAGE_AMAZON_BUCKET can be used in place of --storage-amazon-bucket.

$ chartmuseum --help
NAME:
   ChartMuseum - Helm Chart Repository with support for Amazon S3, Google Cloud Storage, Oracle Cloud Infrastructure Object Storage and Openstack
USAGE:
   chartmuseum [global options] command [command options] [arguments…]
VERSION:
   0.12.0 (build 101e26a)
COMMANDS:
     help, h  Shows a list of commands or help for one command
GLOBAL OPTIONS:
   --config value, -c value              chartmuseum configuration file [$CONFIG]
   --storage-oracle-compartmentid value  compartment ocid of --storage-oracle-bucket [$STORAGE_ORACLE_COMPARTMENTID]
   --storage-etcd-certfile value         cert provided to etcd [$STORAGE_ETCD_CERTFILE]
   --gen-index                           generate index.yaml, print to stdout and exit [$GEN_INDEX]
   --auth-anonymous-get                  allow anonymous GET operations when auth is used [$AUTH_ANONYMOUS_GET]
......
......
......

They do have lots of options and most of the options are to define where the storage should be either I wanted to store it in some cloud location like AWS or Google compute cloud or make use of local storage and get that running.

Now I can go ahead and start the chartmuseum by mentioning in what port I wanted to run and what is the storage path as well as the configuration required for that particular storage path.

For quick and easy demo I’m going to use the local storage.

So as a part of the configuration, I can mention if I wanted to use Amazon S3, I can provide the details on authentications and the location of the bucket all such informations. Or I can go ahead and use Google cloud storage or Alibaba or Microsoft Storage.

Using With Local Filesystem Storage

To get started quickly I’m going to use the local storage. So what I can do, I can mention the port and mention the storage as a local and in which directory the repository should store the information. Now I can start Chart Museum by executing this specific command.

$ chartmuseum --debug --port=8080 --storage="local" --storage-local-rootdir="./chartstorage"
2021-05-25T06:25:44.656Z    DEBUG   Fetching chart list from storage    {"repo": ""}
2021-05-25T06:25:44.701Z    DEBUG   No change detected between cache and storage    {"repo": ""}
2021-05-25T06:25:44.701Z    INFO    Starting ChartMuseum    {"port": 8080}

So it’s going to create a folder as required. The chart storage It will get created and it is running in port 8080. You can verify whether Chart Museum installed properly and working properly or not by accessing the port 8080. (ipaddress:8080). You will get following page.

If I get this particular message, that means Chart Museum is installed successfully and it is ready to manage the charts.

ChartMuseum Installation


Scroll to top