Skip to main content
Argo CD Core is a lightweight, headless installation that provides GitOps functionality without the API server, Web UI, or Argo CD RBAC. It’s ideal for cluster administrators who want to use Argo CD’s GitOps engine with Kubernetes RBAC only.
Argo CD Core runs Argo CD in headless mode with a minimal set of components. It’s perfect for single-cluster, single-admin scenarios where the full Argo CD feature set isn’t needed.

When to Use Core Mode

Choose Argo CD Core if:
  • ✅ You’re a cluster admin who wants to rely on Kubernetes RBAC only
  • ✅ You want to automate deployments using the Kubernetes API only
  • ✅ You don’t need to provide Argo CD UI or CLI to developers
  • ✅ You prefer a simpler, more minimalist installation
  • ✅ You’re managing a single cluster with a small team
Argo CD Core is not recommended if you need:
  • Multi-tenancy with Argo CD RBAC
  • Full-featured Web UI
  • OIDC/SSO authentication
  • Notifications controller
  • Remote API access for CI/CD

Architecture

Included Components

Argo CD Core includes only the essential GitOps components:
  • Application Controller (argocd-application-controller)
    • Monitors applications and reconciles state
    • Syncs desired state from Git to clusters
  • Repository Server (argocd-repo-server)
    • Clones Git repositories
    • Generates manifests (Helm, Kustomize, etc.)
  • Redis (argocd-redis)
    • Caching layer
    • Improves performance and reduces API load
  • ApplicationSet Controller (argocd-applicationset-controller)
    • Manages ApplicationSet resources
    • Enables multi-app templating

Architecture Diagram

Installation

1

Create the namespace

Create a dedicated namespace for Argo CD:
2

Install Argo CD Core

Apply the core installation manifest:
For a specific version:
3

Verify the installation

Check that all pods are running:
Expected output:
Notice that argocd-server and argocd-dex-server are not present in Core mode.

Using Argo CD Core

GitOps with CRDs

The primary way to interact with Argo CD Core is through Kubernetes CRDs:
Create an Application resource:
Apply it:

Using the CLI in Core Mode

The Argo CD CLI can still be used with Core mode, but it spawns a temporary local API server:
1

Install the CLI

Install the Argo CD CLI (installation guide):
2

Login with --core flag

Set your kubeconfig context and login:
The --core flag tells the CLI to spawn a local API server process. This process is automatically terminated when the command completes.
3

Use CLI commands

All standard CLI commands work:
The CLI in Core mode requires proper Kubernetes RBAC permissions on Application and ApplicationSet resources in the argocd namespace.

Using the Web UI in Core Mode

You can run the Web UI locally for a better visual experience:
The UI will be available at http://localhost:8080
The local dashboard spawns a temporary API server on your machine. It uses your kubeconfig credentials and requires proper RBAC permissions.

RBAC Configuration

Since Core mode uses Kubernetes RBAC, you need to grant appropriate permissions:

For Developers

For Admins

Multi-Tenancy in Core Mode

Core mode supports GitOps-based multi-tenancy:
Multi-tenancy in Core mode is enforced by Git repository permissions, not Argo CD RBAC.

Strategy

  1. Git-based permissions: Teams push to their own Git paths/branches
  2. Kubernetes RBAC: Controls who can create/modify Application resources
  3. AppProjects: Define allowed sources and destinations per team

Example Setup

Comparison: Core vs Multi-Tenant

Upgrading from Core to Multi-Tenant

To upgrade from Core to full multi-tenant installation:
1

Backup existing resources

2

Apply multi-tenant manifest

3

Verify all components

You should now see argocd-server and argocd-dex-server pods.
4

Access the UI

Get the admin password:

Uninstalling

To remove Argo CD Core:

Troubleshooting

Ensure your kubeconfig user has proper RBAC permissions on Application resources:
If these return “no”, you need to create appropriate Roles and RoleBindings.
Check the application-controller logs:
Check the application status:
Ensure you’ve set the correct namespace context:
Verify connectivity:

Next Steps

Create Applications

Deploy your first application with Core mode

ApplicationSets

Use ApplicationSets for templating

Kubernetes RBAC

Configure RBAC for your team

Upgrade to Multi-Tenant

Add API server and Web UI