Skip to main content

Установка Docker Offline

                                                                                                                                                                     

Docker Offline установка для Ubuntu (DEB-based)

Добавление репозитория Docker
# Автоматическое определение кодового имени Ubuntu
UBUNTU_VERSION=$(lsb_release -cs)
echo "Версия Ubuntu: $UBUNTU_VERSION"

# Создание папки для ключей
sudo mkdir -p /etc/apt/keyrings

# Добавление GPG ключа
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# Добавление репозитория
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $UBUNTU_VERSION stable" | \
    sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Синхронизация репозиториев
sudo apt update
Скачивание Docker и всех зависимостей
# Создание папки для пакетов
mkdir -p ~/docker-offline-packages
cd ~/docker-offline-packages

# Скачивание пакетов
sudo apt-get download \
    docker-ce \
    docker-ce-cli \
    containerd.io \
    docker-compose-plugin \
    docker-buildx-plugin

# Скачивание ВСЕХ зависимостей (включая рекомендованные)
apt-cache depends docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin | \
    grep -E "Depends|Recommends" | \
    awk '{print $2}' | \
    sort -u | \
    xargs sudo apt-get download 2>/dev/null || true
Копирование на целевой сервер
# Замените user и IP на реальные значения
sudo scp -r ~/docker-offline-packages user@IP:/home/user/

# Альтернатива: архивирование для передачи любым способом
tar -czf docker-offline-packages.tar.gz ~/docker-offline-packages
Установка на целевом сервере
cd ~/docker-offline-packages
# Установка с разрешением зависимостей (РЕКОМЕНДУЕТСЯ)
sudo apt install ./*.deb -y
# Альтернатива: установка через dpkg (если нет интернета)
# sudo dpkg -i *.deb
Запуск и настройка Docker
sudo systemctl start docker
sudo systemctl enable docker
sudo usermod -aG docker $USER

# Применение изменений группы без перезагрузки
newgrp docker

Docker Offline установка для CentOS/RHEL 8+

Добавление репозитория Docker
# Установка утилит для управления репозиториями
sudo dnf install -y dnf-utils

# Добавление репозитория Docker
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
Синхронизация репозиториев
sudo dnf makecache
Скачивание Docker и всех зависимостей
# Создание папки для пакетов
mkdir -p ~/docker-offline-packages
cd ~/docker-offline-packages

# Скачивание пакетов и всех зависимостей
sudo dnf download \
    docker-ce \
    docker-ce-cli \
    containerd.io \
    docker-compose-plugin \
    docker-buildx-plugin \
    container-selinux \
    --resolve --alldeps

# Проверка количества скачанных пакетов
echo "Скачано $(ls -1 *.rpm 2>/dev/null | wc -l) RPM-пакетов"
Копирование на целевой сервер
# Замените user и IP на реальные значения
sudo scp -r ~/docker-offline-packages user@IP:/home/user/

# Альтернатива: архивирование для передачи любым способом
tar -czf docker-offline-packages.tar.gz ~/docker-offline-packages
Установка на целевом сервере
cd ~/docker-offline-packages
# Установка с разрешением зависимостей
sudo dnf localinstall ./*.rpm -y
# Альтернатива: установка через rpm (если нет интернета)
# sudo rpm -ivh --nodeps *.rpm
Запуск и настройка Docker
sudo systemctl start docker
sudo systemctl enable docker
sudo usermod -aG docker $USER

# Применение изменений группы без перезагрузки
newgrp docker