# Install k3sup with Homebrew, apk, MacPorts, Nix, scoop, zypper

Utility to create k3s clusters on any local or remote VM. Version 0.13.12 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:k3sup
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install k3sup
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install k3sup
```

  Evidence: MacPorts ports tree: sysutils/k3sup/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add k3sup
```

  Evidence: Alpine Linux edge package indexes: k3sup from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz

- Nix (92%):

```sh
nix profile install nixpkgs#k3sup
```

  Evidence: nixpkgs package indexes: pkgs/by-name/k3/k3sup/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- zypper (92%):

```sh
sudo zypper install k3sup
```

  Evidence: openSUSE Tumbleweed package metadata: k3sup from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

### Windows

- Scoop (92%):

```sh
scoop install main/k3sup
```

  Evidence: Scoop official bucket manifest trees: bucket/k3sup.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:k3sup
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/k3sup>
- **Version:** 0.13.12
- **Source summary:** Utility to create k3s clusters on any local or remote VM
- **Homepage:** <https://k3sup.dev>
- **Repository:** <https://github.com/alexellis/k3sup>
- **Upstream docs:** <https://github.com/alexellis/k3sup#readme>
- **License:** MIT
- **Source archive:** <https://github.com/alexellis/k3sup.git>
- **Generated:** 2026-07-08T18:08:21+00:00

## Executables

- k3sup (cli)
- k3sup (alias)

## Build dependencies

- go

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 0.13.12
- Local data: ok
- Upstream repository: https://github.com/alexellis/k3sup
- info: No package-manager update timestamp was available.
- info: No cached GitHub release or tag data was available.
## Project history and usage

k3sup is Alex Ellis's lightweight SSH-based installer for getting from a machine or VM to a usable k3s kubeconfig quickly.

### Project history

k3sup appeared in August 2019 during the early wave of enthusiasm around Rancher's k3s. The initial release established a small Go binary that could install k3s over SSH and return kubectl access without requiring users to memorize the full server, token, and kubeconfig dance.

Early releases quickly added cluster-joining support, Windows binaries, version pinning, and ergonomics for multi-node k3s clusters. The project kept the deliberately small surface: install a server, join agents, fetch kubeconfig, and smooth out the SSH workflow.

### Adoption history

k3sup became popular in homelab, edge, Raspberry Pi, and small-cloud Kubernetes examples because it matched k3s's promise: make a usable cluster with ordinary Linux hosts and SSH access.

The creator's tutorials and community posts helped make k3sup part of the k3s tooling vocabulary even though it remains an independent project rather than a k3s subcommand.

### How it is used

A typical workflow runs `k3sup install` against the first host, then `k3sup join` for additional agents or servers. The tool handles SSH, remote installation, token handling, and kubeconfig retrieval so users can move directly to kubectl.

### Why package nerds care

k3sup is the kind of tiny infrastructure binary package managers are good at distributing: no service, no local state database, just a CLI that turns a fiddly bootstrap procedure into a repeatable command.

### Timeline

- 2019: k3sup 0.1.0 was released in August as an initial working release.
- 2019: 0.2.0 added the `join` command for forming a complete cluster.
- 2019: 0.2.2 added Windows binary support.
- 2019: 0.3.0 added k3s version pinning.
- 2020: The project was widely documented for bare-metal and highly available k3s workflows.

### Related projects

- k3sup is built around k3s and SSH. It overlaps conceptually with k0sctl, kubeadm automation scripts, and other small cluster-bootstrap CLIs.

### Sources

- <https://blog.alexellis.io/create-a-3-node-k3s-cluster-with-k3sup-digitalocean/>
- <https://github.com/alexellis/k3sup>
- <https://github.com/alexellis/k3sup/releases/tag/0.1.0>
- <https://github.com/alexellis/k3sup/releases/tag/0.2.0>
- <https://github.com/alexellis/k3sup/releases/tag/0.3.0>
- <https://k3sup.dev>


## Security Notes

infrastructure mutation or orchestration signal.

- **Geiger risk:** orange / medium
- infrastructure mutation or orchestration signal

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** k3sup
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Nix - k3sup: normalized package name match | nixpkgs package indexes: pkgs/by-name/k3/k3sup/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - k3sup - 0.13.6-r15: normalized package name match | Alpine Linux edge package indexes: k3sup from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | A light-weight utility to get from zero to KUBECONFIG with k3s | https://k3sup.dev/
- apk - k3sup-bash-completion - 0.13.6-r15: normalized package name match | Alpine Linux edge package indexes: k3sup-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Bash completions for k3sup | https://k3sup.dev/
- apk - k3sup-fish-completion - 0.13.6-r15: normalized package name match | Alpine Linux edge package indexes: k3sup-fish-completion from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Fish completions for k3sup | https://k3sup.dev/
- apk - k3sup-zsh-completion - 0.13.6-r15: normalized package name match | Alpine Linux edge package indexes: k3sup-zsh-completion from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Zsh completions for k3sup | https://k3sup.dev/
- zypper - k3sup - 0.13.12-1.3: normalized package name match | openSUSE Tumbleweed package metadata: k3sup from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Bootstrap Kubernetes with k3s over SSH < 1 min | https://github.com/alexellis/k3sup
- MacPorts - k3sup: normalized package name match | MacPorts ports tree: sysutils/k3sup/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/k3sup: normalized package name match | Scoop official bucket manifest trees: bucket/k3sup.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## Related links

- [Cloud CLI packages](https://www.automicvault.com/pkg/cloud-clis/) - Belongs to a cloud or infrastructure command family.
- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [go](https://www.automicvault.com/pkg/brew/go/) - Build dependency declared by Homebrew.
- [k3d](https://www.automicvault.com/pkg/brew/k3d/) - Shares av.db curated category or tags: cli, cloud-infrastructure, k3s, kubernetes.
- [kty](https://www.automicvault.com/pkg/brew/kty/) - Shares av.db curated category or tags: cli, cloud-infrastructure, kubernetes, ssh.
- [cdk8s](https://www.automicvault.com/pkg/brew/cdk8s/) - Shares av.db curated category or tags: cli, cloud-infrastructure, kubernetes.
- [chaoskube](https://www.automicvault.com/pkg/brew/chaoskube/) - Shares av.db curated category or tags: cli, cloud-infrastructure, kubernetes.
- [click](https://www.automicvault.com/pkg/brew/click/) - Shares av.db curated category or tags: cli, cloud-infrastructure, kubernetes.
- [cloud-provider-kind](https://www.automicvault.com/pkg/brew/cloud-provider-kind/) - Shares av.db curated category or tags: cli, cloud-infrastructure, kubernetes.
- [clusterawsadm](https://www.automicvault.com/pkg/brew/clusterawsadm/) - Shares av.db curated category or tags: cli, cloud-infrastructure, kubernetes.
- [clusterctl](https://www.automicvault.com/pkg/brew/clusterctl/) - Shares av.db curated category or tags: cli, cloud-infrastructure, kubernetes.
- [ctlptl](https://www.automicvault.com/pkg/brew/ctlptl/) - Local package facts share a topical domain. Shared terms: cli, cloud, cloud-infrastructure, clusters, infrastructure.

## Combined YAML source

View the package source record on GitHub. [combined/k3sup.yml](https://github.com/automic-vault/db/blob/main/combined/k3sup.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
