Quick Start

This section contains the steps to help you through your first run :smiley:

Quick Start

The dashboard is accessible at https://ship.argonaut.dev.

To create clusters, environments, and services programmatically, follow the steps listed in the Documentation page.

The instructions to get the CLI and integrate with your CI provider are present there

First run

AWS is currently supported, with GCP support coming soon

Provide access to Argonaut by adding in the access method (key and secret for aws).

First runFirst run

Once the access is provided, you will have an option to create a cluster (which is a logical grouping of environments), and the associated environments.

Create an environment

Clusters and environments

The configuration for the clusters is as follows:

New EnvironmentNew Environment

The cluster creation process takes ~15 minutes to get setup on your cloud. Currently, the creation progress can be tracked by going to the "Pending Environments" page. A detailed output will be added shortly.

When an environment is created, the kubernetes cluster is automatically setup with some essential tools. These are:

  • cert-manager to manage TLS certificates and enable https for domains
  • ingress-nginx to manage traffic ingress
  • prometheus , metrics-collector, kubernetes-metrics-exporter for displaying information about infrastructure and services that are running

The environments page has all the environments that are created. Clicking on infrastructure will give the list of clusters and other resources that have been provisioned in that environment.

List of EnvironmentsList of Environments

Deploy an observability stack

From the list of third party tools available as direct integrations, pick one. Grafana, Loki, and Fluentbit stack is currently supported.

  • The list of services that are deployed and running is visible at the Deployments page
  • Clicking on the specific deployment will display the different resources that are a part of that service deployment
  • There are deep links to the logs for the service directly to grafana/loki which has been provisioned along with the cluster

The collected logs from the running services are automatically collected and stored in the s3 bucket input here. If the bucket doesn't exist, it will be created automatically.

Coming soon: Datadog integration

The same process can be followed for setting up any installation / integration for that environment.

Connect to a Container Registry

A container registry is where the images that are built are stored, either automatically using buildpacks or using the provided dockerfile.

Configurations for common CRs are below:

  1. Github Container Registry
    • url: ghcr.io
    • username: <github-org-name>
    • Create a Github Personal Access Token by following the instructions here
    • Plug the PAT in the corresponding field
  2. Gitlab Container Registry
    • url: <gitlab.example.com/mynamespace/>
    • username: <my-gitlab-project>
    • Create an access token by following the instructions here
  3. Dockerhub
    • url: registry.hub.docker.com
    • username: <org-name>
  4. AWS Elastic Container Registry
    • url: <aws_account_id>.dkr.ecr.<region>.amazonaws.com
    • username: AWS

Coming soon: automated provision and integration of AWS Elastic Container Registry (ECR)

Note: The container registry will need to be "connected" per environment. The same registry can be used for any number of environments

Connect to GitHub Repositories

Navigate to the Connections page from the sidebar and click on connect Github. Connect the organizations and registries that you want to deploy from.

Deploy your first service

From Github repository

List of AppsList of Apps

Create a new service

  1. The yaml configuration format for the service is detailed on the Documentation page.
  2. The example service descriptor can be directly modified in-place and deployed instantly
  3. The file can be provided along with your source files in version control and be invoked as a part of the CI process using the art cli.
  4. The yaml configuration format for the service is detailed in the Documentation page.
  5. The example service descriptor can be directly modified in-place and deployed instantly
  6. The file can be provided along with your source files in version control and be invoked as a part of the CI process using the art cli.

Install App from GitInstall App from Git

Install App from ImageInstall App from Image

Install App from LibraryInstall App from Library

A quick demo of the usage is available here - https://www.loom.com/share/b26a00f40bd3475db5f7e31f2b2ec7f5