Skip to Content
Installing MarshalChoose your path

Choose your path

Run Marshal inside your own infrastructure, on one Linux node or on a managed Kubernetes cluster in Google Cloud or AWS. Every path installs the same product from the same Helm chart. There is no reduced edition. Only two things change: the installer (Terraform applies the chart, or ArgoCD syncs it) and the target it lands on (a k3s node, GKE or EKS).

Check the prerequisites, get the installer, and install on your target. Then claim the owner account and run your first task.

What you can do with it

  • Try Marshal on one VM. Point the k3s installer at a single Linux node. It brings its own Postgres and Redis, so you fill in five values, run one apply, and open the URL.
  • Run it next to your other services on GKE. Reuse a GKE cluster you already operate, or let Terraform build a private one. Images come through an Artifact Registry cache in your own project.
  • Give Marshal its own AWS account. Let the EKS installer build the VPC, the cluster, both node groups and an RDS database in one apply, with nothing exposed to the internet.
  • Keep it in GitOps. Already run ArgoCD? Sync the same chart from an Application you commit, on any cloud.

Pick a path

PathBest forYou needProduction-ready
single-node k3sEvaluation, demos, a small teamOne Linux node with k3s 1.27 or newerYes, with a managed Postgres. One node, so no high availability.
GKETeams on Google CloudA GCP project, a GKE cluster or the rights to create one, Cloud SQL Postgres 16Yes
EKSTeams on AWSAn AWS account, an EKS cluster or the rights to create one, Postgres 16 (RDS can be created for you)Yes
ArgoCDTeams that deploy everything through GitOpsA cluster with ArgoCD, an ingress controller, Postgres 16Yes

Before you start

Work through Prerequisites once. It covers the onboarding values from Marshal, Postgres, your hostname, network access and local tools, and it applies to every path. Installing on AWS? Also read AWS: before you install: two of its items can take days to clear.

Get the installer

The installer is a public repository, marshal-org/marshal-install. Each tag is one release of the installer for one Marshal chart version. Clone the tag that matches your chart_version:

git clone --branch v<chart_version> https://github.com/marshal-org/marshal-install.git cd marshal-install/single-node-k3s # or gcp-gke, or aws-eks

Some chart versions also have a revision tag, v<chart_version>-r<n>, with installer updates for that version. Use the newest one. List every tag with git ls-remote --tags https://github.com/marshal-org/marshal-install.git.

Your terraform.tfvars, any *_override.tf file and your state are gitignored in the clone, so moving to a new tag later never touches them. The ArgoCD path uses argocd/application.yaml from the same clone.

Prefer a guide at your side? The installer ships a Claude Code  skill that walks you through the whole install. See A guided install.

Install paths

Plan your install

After the install

Every path ends the same way: open your Marshal URL, read the setup token from the cluster and claim the owner account at /setup. Then follow Getting started as an owner and run your first task.