# 🐳 Rootless Docker + Docker Compose Installer [![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)](#) An interactive Bash installer for quick installation of **Rootless Docker**, **Docker Compose**, and full environment cleanup. [πŸ‡·πŸ‡Ί Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π½Π° русском](./README.md) --- ## πŸ“ Repository Structure ``` . β”œβ”€β”€ version β”‚ # self-update file └── scripts/ β”œβ”€β”€ docker-install.sh # main installer └── docker-installer-init.sh # loader placed in /etc/profile.d ``` --- ## πŸ“¦ Dependencies | Utility | Purpose | |-------------|------------------------------------| | `curl` | Downloading files over HTTP(S) | | `bash` | Script interpreter | | `tput` | Terminal color output | | `whiptail` | Terminal-based dialog menus | | `ncurses` | Cursor and color control | ### Install dependencies: #### Ubuntu / Debian: ```bash sudo apt update sudo apt install -y curl bash whiptail ncurses-bin ``` --- ## πŸš€ Installation via `curl` ### One-time execution (current user): ```bash curl -fsSL https://gitea.wssk.ru/sk/docker-rootless-install/raw/branch/master/docker-install.sh | bash ``` ### Persistent installation: ```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 ``` Run the installer: ```bash ./docker-install.sh ``` After launch, a menu will appear: | Menu | |-----------------------------| | 1. Install Docker (rootless) | | 2. Install Docker Compose | | 3. Install everything | | 4. ⚠️ Remove Docker and all related data | Use the last option with caution! --- ## 🧩 Global Installation (via `/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 ``` After that, every user upon terminal login will: - Get a copy of the installer script in `~/scripts/docker-install.sh` - See a welcome dialog - Be able to run the installer --- ## πŸ”„ Auto-update The script checks the remote `version` file and updates itself automatically if a newer version is available. --- ## 🧨 Uninstallation The menu includes an option **"Remove Docker and ALL data"**, which deletes: - Containers - Images - Volumes - Rootless Docker configs - Docker and Compose binaries ⚠️ Use with caution!