116 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🐳 Установщик Rootless Docker + Docker Compose
[![Shell](https://img.shields.io/badge/shell-bash-brightgreen)](https://www.gnu.org/software/bash/)
[![Rootless](https://img.shields.io/badge/docker-rootless-blue)](https://docs.docker.com/engine/security/rootless/)
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE)
[![Version](https://img.shields.io/badge/version-1.0.0-informational)](#)
Интерактивный Bash-установщик для быстрой установки **Docker в режиме Rootless**, **Docker Compose**, а также удаления всего установленного окружения.
[🇬🇧 Read in English](./README.en.md)
---
## 📁 Структура репозитория
```
.
├── version
│ # self-update file
└── scripts/
├── docker-install.sh # основной установщик
└── docker-installer-init.sh # загрузчик установщика (размещается в /etc/profile.d)
```
---
## 📦 Зависимости
| Утилита | Назначение |
|-------------|--------------------------------|
| `curl` | Загрузка файлов по HTTP(S) |
| `bash` | Интерпретация скриптов |
| `tput` | Цветной вывод в терминале |
| `whiptail` | Диалоговое меню в терминале |
| `ncurses` | Управление курсором/цветами |
### Установка зависимостей:
#### Ubuntu / Debian:
```bash
sudo apt update
sudo apt install -y curl bash whiptail ncurses-bin
```
---
## 🚀 Установка через `curl`
### Одноразовый запуск (текущий пользователь):
```bash
curl -fsSL https://gitea.wssk.ru/sk/docker-rootless-install/raw/branch/master/docker-install.sh | bash
```
### Постоянная установка:
```bash
sudo curl -fsSL https://gitea.wssk.ru/sk/docker-rootless-install/raw/branch/master/docker-install.sh -o ./docker-install.sh
sudo chmod +x ./docker-install.sh
```
Запуск:
```bash
./docker-install.sh
```
После запуска появится меню с выбором:
<!-- table -->
| Menu |
|-------------|
| 1. Установить Docker (rootless) |
| 2. Установить Docker Compose |
| 3. Установить всё сразу |
| 4. ⚠️ Удалить Docker и все связанные данные |
Последний пункт использовать с осторожностью!
---
## 🧩 Глобальная установка (через `/etc/profile.d`)
```bash
sudo curl -fsSL https://gitea.wssk.ru/sk/docker-rootless-install/raw/branch/master/scripts/docker-installer-init.sh \
-o /etc/profile.d/docker-installer-init.sh
sudo chmod +x /etc/profile.d/docker-installer-init.sh
```
После этого каждый пользователь при входе в терминал:
- Получит копию скрипта в `~/scripts/docker-install.sh`
- Увидит приветственное окно
- Сможет запустить установку
---
## 🔄 Автообновление
Скрипт автоматически сверяет локальную и удалённую версию (`version`) и обновляет себя при необходимости.
---
## 🧨 Удаление
В меню скрипта есть опция **"Удалить Docker и ВСЕ данные"**, которая удаляет:
- Контейнеры
- Образы
- Тома
- Конфиги Docker Rootless
- Бинарники Docker и Compose
⚠️ Используйте с осторожностью!
---