Linux

Установка Minikube на Linux: пошаговое руководство

Это руководство поможет вам установить и настроить Minikube — инструмент для запуска однодневного Kubernetes-кластера на Linux. Вы сможете начать разработку и тестирование приложений в среде Kubernetes локально, без облачных ресурсов.

Обновлено 16 февраля 2026 г.
10-15 мин
Низкая
FixPedia Team
Применимо к:Ubuntu 20.04+Debian 11+Fedora 35+Minikube v1.30+

Введение / Зачем это нужно

Minikube — это инструмент, который запускает однодневный (single-node) кластер Kubernetes на вашем локальном компьютере под управлением Linux. Это идеальная среда для:

  • Обучения основам Kubernetes без затрат на облачные ресурсы.
  • Разработки и тестирования приложений в контейнерах локально.
  • Пробных развёртываний манифестов (YAML-файлов) перед отправкой в продакшен-кластер.

После прохождения этого гайда у вас будет работающий кластер Kubernetes, доступный через стандартный CLI-инструмент kubectl.

Требования / Подготовка

Перед началом убедитесь, что:

  1. У вас есть Linux-дистрибутив (Ubuntu/Debian/Fedora/CentOS и т.д.) с доступом к sudo.
  2. Включена виртуализация в BIOS/UEFI (технологии Intel VT-x или AMD-V). Обычно проверяется командой:
    grep -E --color '(vmx|svm)' /proc/cpuinfo
    
    Если вывод пуст, нужно зайти в BIOS и активировать опцию (называется "Virtualization Technology", "SVM Mode" или подобное).
  3. Выбран и установлен драйвер. Minikube использует драйвер для создания виртуальной машины. Самые популярные варианты:
    • docker (рекомендуется): требует установленного Docker. Быстро и эффективно.
    • virtualbox: требует установленного VirtualBox. Подходит, если Docker нежелателен.
    • kvm2: для систем, использующих KVM (в основном RHEL-совместимые дистрибутивы). Требует установки libvirt и qemu-kvm.

Установка выбранного драйвера

Если выбираете Docker:

# Для Ubuntu/Debian
sudo apt update
sudo apt install -y docker.io
sudo systemctl enable --now docker
sudo usermod -aG docker $USER
newgrp docker  # Применить изменения группы без перезахода

Если выбираете VirtualBox:

# Для Ubuntu/Debian
sudo apt update
sudo apt install -y virtualbox virtualbox-ext-pack
# Для Fedora
sudo dnf install -y VirtualBox

Если выбираете KVM2 (для Fedora/CentOS/RHEL):

sudo dnf install -y @virtualization
sudo systemctl enable --now libvirtd
sudo usermod -aG libvirt $USER
newgrp libvirt
sudo virt-install --connect qemu:///system --name minikube --memory 2048 --disk size=20 --os-variant generic --import

Пошаговая инструкция

Шаг 1: Установка зависимостей и менеджера пакетов

Убедимся, что система обновлена и установлены базовые утилиты (curl, wget, gnupg).

Для Ubuntu/Debian:

sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget gnupg apt-transport-https ca-certificates

Для Fedora/CentOS/RHEL:

sudo dnf update -y
sudo dnf install -y curl wget gnupg2

Шаг 2: Загрузка и установка бинарника Minikube

Скачаем последнюю стабильную версию Minikube. На момент написания это v1.30.1.

# Скачивание
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

# Установка в систему
sudo install minikube-linux-amd64 /usr/local/bin/minikube

Проверьте установку:

minikube version
# Вывод должен быть примерно: minikube version: v1.30.1

Шаг 3: Запуск Kubernetes-кластера

Теперь запустим Minikube. Укажите драйвер, соответствующий установленному вами ПО. Пример для Docker:

minikube start --driver=docker

Что происходит:

  1. Minikube проверяет наличие драйвера.
  2. Скачивает образ Kubernetes (k8s.gcr.io/kube-apiserver и др., ~1.5 ГБ).
  3. Создаёт и запускает виртуальную машину/контейнер с именем minikube.
  4. Настраивает kubectl (локальный конфиг ~/.kube/config).

Первый запуск может занять 5-10 минут в зависимости от скорости интернета.

Если возникла ошибка, связанная с драйвером, можно явно указать его:

# Для VirtualBox
minikube start --driver=virtualbox

# Для KVM2
minikube start --driver=kvm2

Шаг 4: Настройка kubectl и проверка статуса

Установите kubectl — CLI-инструмент для управления Kubernetes.

Установка kubectl (Ubuntu/Debian):

curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl

Проверьте, что kubectl видит ваш кластер:

kubectl cluster-info
# Вывод должен содержать: Kubernetes control plane is running at https://192.168.49.2:8443

Проверьте статус узлов:

kubectl get nodes
# Ожидаемый вывод:
# NAME       STATUS   ROLES           AGE   VERSION
# minikube   Ready    control-plane   1m    v1.26.3

Также можно использовать встроенную команду Minikube:

minikube status
# Должно показать: host: Running, kubelet: Running, apiserver: Running, kubeconfig: Configured

Проверка результата

Кластер готов к работе, если выполнены два условия:

  1. minikube status показывает Running для всех компонентов.
  2. kubectl get nodes выводит узел minikube в статусе Ready.

Быстрый тест: развернём простейшее приложение (nginx) и убедимся, что оно доступно.

# Развернуть deployment
kubectl create deployment nginx --image=nginx

# Экспортировать service как NodePort для доступа извне Minikube
kubectl expose deployment nginx --type=NodePort --port=80

# Узнать порт
kubectl get svc nginx
# В колонке PORT(S) будет что-то вроде: 80:3xxxx/TCP

# Получить IP Minikube (обычно 192.168.49.2)
minikube ip

# Проверить доступ (замените <PORT> на реальный)
curl $(minikube ip):<PORT>
# Должен вернуть HTML-код страницы nginx

Возможные проблемы

Ошибка: Failed to start host: Creating host: create: precreate: Default frontend driver conflicts with another host...

Причина: Уже существует виртуальная машина с именем minikube (возможно, от прошлого неудачного запуска). Решение:

minikube delete --all  # Удалить все кластеры
minikube start --driver=<ваш_драйвер>  # Запустить заново

Ошибка: Exiting due to DRV_NOT_FOUND: The specified driver "docker" is not installed

Причина: Драйвер docker выбран, но сам Docker не установлен или не запущен. Решение: Установите Docker (см. Шаг 0) и убедитесь, что служба активна (sudo systemctl status docker).

Ошибка: This computer doesn't have VT-x/AMD-v

Причина: Виртуализация отключена в BIOS/UEFI или процессор не поддерживает. Решение: Включите виртуализацию в BIOS. Если процессор старый, Minikube может не поддерживаться. В этом случае попробуйте драйвер docker (не требует аппаратной виртуализации) или none (работает напрямую на хосте, но требует сложной настройки).

Проблемы с памятью/диском

Симптом: Minikube зависает на этапе Downloading Kubernetes v1.xx.x или Starting cluster. Решение: Увеличьте выделяемую память. Minikube по умолчанию выделяет 2 ГБ. Запустите с явным указанием:

minikube start --driver=docker --memory=4096 --cpus=2

Ошибка: Error: failed to download: context deadline exceeded

Причина: Проблемы с сетью или блокировка скачивания образов. Решение:

  1. Проверьте интернет-соединение.
  2. Попробуйте использовать прокси или зеркало. Например, для Docker-драйвера можно предварительно загрузить образы в локальный репозиторий.

После перезагрузки kubectl не видит кластер

Причина: Конфигурация kubectl хранится в ~/.kube/config. Minikube может не восстановить соединение автоматически. Решение: Просто выполните minikube start снова. Он скопирует актуальную конфигурацию. Или вручную:

minikube update-context

Часто задаваемые вопросы

Какие системные требования для Minikube?
Почему Minikube не запускается с ошибкой 'This computer doesn't have VT-x/AMD-v'?
Как переключить драйвер Minikube с virtualbox на docker?
Как полностью удалить Minikube и все его данные?

Полезное

Установка зависимостей и менеджера пакетов
Загрузка и установка бинарника Minikube
Запуск Kubernetes-кластера
Настройка kubectl и проверка статуса