Run Rancher Desktop on Fedora Atomic Desktops (Toolbox Container Method)

Published: (December 22, 2025 at 06:49 AM EST)
2 min read
Source: Dev.to

Source: Dev.to

Prerequisites

sudo dnf install toolbox

Create and configure a toolbox container

toolbox create kubelab
toolbox enter kubelab

Inside the container, install the required tools:

sudo dnf install gnupg2 pinentry-curses pass

Configure GPG to use the curses pinentry:

echo 'pinentry-program /usr/bin/pinentry-curses' > ~/.gnupg/gpg-agent.conf
gpg-connect-agent reloadagent /bye
pkill gpg-agent

Generate a GPG key (use your own email address) and initialise pass:

gpg --generate-key   # Use your email, e.g. noor@latif.se; note the key ID output
pass init    # Replace with the key ID from the previous step

Exit the toolbox:

exit

Enable non‑root apps to bind to port 80 on the host

sudo sysctl -w net.ipv4.ip_unprivileged_port_start=80
echo 'net.ipv4.ip_unprivileged_port_start=80' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

Install Rancher Desktop inside the toolbox

toolbox enter kubelab
sudo dnf config-manager addrepo --from-repofile=https://download.opensuse.org/repositories/isv:/Rancher:/stable/fedora/isv:Rancher:stable.repo
sudo dnf install rancher-desktop

Launch the GUI (it will appear in your Fedora desktop environment):

rancher-desktop

Quick test with a sample deployment

toolbox enter kubelab
kubectl create deployment my-app --image=nginx --replicas=3
kubectl expose deployment my-app --port=80 --type=NodePort
kubectl get svc my-app

Note the NodePort value (e.g., 31912). Test the service:

curl localhost:31912   # Replace 31912 with your actual NodePort

You can also open it in a browser at http://localhost:31912 to see the Nginx welcome page.

kubectl get pods
kubectl delete deployment my-app

Note: Rancher Desktop forwards NodePorts to localhost.[2][3]

Access the Rancher Desktop Dashboard

Open the Rancher Desktop application and click the Cluster Dashboard button at the bottom left.

Handy aliases

Add the following lines to ~/.bashrc (or your preferred shell rc file):

alias rd='toolbox enter kubelab'
alias rancher='toolbox run -c kubelab rancher-desktop'
alias dc='toolbox run -c kubelab nerdctl'
alias k='toolbox run -c kubelab kubectl'

Activate the changes:

source ~/.bashrc

Good luck!

Back to Blog

Related posts

Read more »