minimumLimaVersion: 2.0.0
base: template:_images/ubuntu-lts
mounts: []
containerd:
system: false
user: false
provision:
- mode: system
script: |
#!/bin/sh
if [ ! -d /var/lib/rancher/rke2 ]; then
curl -sfL https://get.rke2.io | INSTALL_RKE2_CHANNEL=v1.34 sh -
fi
env | grep "http_proxy\|https_proxy\|no_proxy" > /etc/default/rke2-server
sed -i "s/http_proxy/CONTAINERD_HTTP_PROXY/g" /etc/default/rke2-server
sed -i "s/https_proxy/CONTAINERD_HTTPS_PROXY/g" /etc/default/rke2-server
sed -i "s/no_proxy/CONTAINERD_NO_PROXY/g" /etc/default/rke2-server
systemctl start rke2-server.service
probes:
- script: |
#!/bin/bash
set -eux -o pipefail
if ! timeout 30s bash -c "until test -f /etc/rancher/rke2/rke2.yaml; do sleep 3; done"; then
echo >&2 "rke2 is not running yet"
exit 1
fi
hint: |
The rke2 kubeconfig file has not yet been created.
Run "limactl shell rke2 sudo journalctl -u rke2-server" to check the log.
If that is still empty, check the bottom of the log at "/var/log/cloud-init-output.log".
copyToHost:
- guest: "/etc/rancher/rke2/rke2.yaml"
host: "{{.Dir}}/copied-from-guest/kubeconfig.yaml"
deleteOnStop: true
message: |
To run `kubectl` on the host (assumes kubectl is installed), run the following commands:
------
export KUBECONFIG="{{.Dir}}/copied-from-guest/kubeconfig.yaml"
kubectl ...
------