docker-auto-install
v1.0.3
Published
One-command Docker installation for Linux — detects your distro and installs Docker Engine, CLI, Compose, Buildx & Containerd with dignity.
Maintainers
Readme
████▄ ▄▄▄ ▄▄▄▄ ▄▄ ▄▄ ▄▄▄▄▄ ▄▄▄▄
██ ██ ██▀██ ██▀▀▀ ██▄█▀ ██▄▄ ██▄█▄
████▀ ▀███▀ ▀████ ██ ██ ██▄▄▄ ██ ██
▄████▄ ▄▄ ▄▄ ▄▄▄▄▄▄ ▄▄▄
██▄▄██ ██ ██ ██ ██▀██
██ ██ ▀███▀ ██ ▀███▀
██ ▄▄ ▄▄ ▄▄▄▄ ▄▄▄▄▄▄ ▄▄▄ ▄▄ ▄▄ ▄▄▄▄▄ ▄▄▄▄
██ ███▄██ ███▄▄ ██ ██▀██ ██ ██ ██▄▄ ██▄█▄
██ ██ ▀██ ▄▄██▀ ██ ██▀██ ██▄▄▄ ██▄▄▄ ██▄▄▄ ██ ██One does not simply install Docker. One orchestrates it.
Detects your distro, installs Docker Engine, CLI, Compose, Buildx & Containerd — crafted with dignity.
Quick Start — No Dependencies Required ⭐
The primary distribution method is a plain bash script — works on any fresh Linux machine with zero prerequisites.
Using curl
curl -fsSL https://raw.githubusercontent.com/stillYG108/Docker-Auto-Install/main/install.sh | sudo bashUsing wget
wget -qO- https://raw.githubusercontent.com/stillYG108/Docker-Auto-Install/main/install.sh | sudo bashDownload and inspect first (recommended on production systems)
curl -fsSL https://raw.githubusercontent.com/stillYG108/Docker-Auto-Install/main/install.sh -o install-docker.sh
# Review the script
less install-docker.sh
# Run it
sudo bash install-docker.shGit clone
git clone https://github.com/stillYG108/Docker-Auto-Install
cd Docker-Auto-Install
sudo bash install.shThis method requires nothing but
bashandcurl(orwget) — ideal for fresh EC2 instances, VPSs, cloud VMs, Raspberry Pi, and any bare Linux server.
For Node.js Developers (npm / npx)
If you're already in a Node.js environment, you can use the npm package instead:
One-shot via npx
npx docker-auto-installGlobal install
npm install -g docker-auto-install
docker-auto-installNote: Requires Node.js ≥ 14. The npm package is a thin wrapper that invokes the same bash script under the hood.
If Node.js isn't installed yet, use thecurlmethod above — it's faster and has no prerequisites.
Supported Distributions
| Family | Distros | |--------|---------| | Debian / Ubuntu | Ubuntu, Debian, Linux Mint, Pop!_OS, elementary OS, Kali Linux, Raspbian | | RHEL / CentOS | RHEL, CentOS, Rocky Linux, AlmaLinux, Oracle Linux | | Fedora | Fedora | | Arch Linux | Arch, Manjaro, EndeavourOS, Garuda | | openSUSE / SLES | openSUSE Leap, openSUSE Tumbleweed, SLES, SLED | | Alpine Linux | Alpine |
What It Does
Pre-flight: verify internet connectivity
Pre-flight: check if Docker is already installed (offer graceful exit)
│
▼
Detect Linux distribution (/etc/os-release)
│
▼
Update package index & upgrade packages
│
▼
Remove old Docker relics (docker.io, docker-engine, etc.)
│
▼
Install prerequisites (curl, ca-certificates, gnupg, etc.)
│
▼
Add Docker's official repository
├─ Downloads distro-correct GPG key
├─ Verifies GPG fingerprint (9DC8 5822 9FC7 DD38 …)
└─ Writes signed DEB822 / RPM / zypper source entry
│
▼
Install Docker Engine + CLI + Containerd + Buildx + Compose
│
▼
Start & enable Docker service (systemd or OpenRC)
│
▼
Add invoking user to the docker group
│
▼
Run hello-world smoke test
│
▼
Print installation summaryProject Structure
docker-auto-install/
├── install.sh ← PRIMARY: curl this on any fresh Linux machine
├── scripts/
│ └── the_docker_installation.sh ← Bundled copy used by the npm package
├── bin/
│ └── docker-auto-install.js ← Node.js CLI shim (npm / npx entry point)
├── package.json
└── README.mdRequirements
| Method | Requirements |
|--------|-------------|
| curl \| bash | bash, curl or wget, sudo or root |
| git clone | git, bash, sudo or root |
| npx / npm | Node.js ≥ 14, bash, sudo or root |
Maintaining This Package
Docker occasionally updates repository URLs, GPG keys, and supported distributions. When that happens:
- Update
install.sh(and sync the copy toscripts/the_docker_installation.sh) to match the official Docker installation docs. - Update
EXPECTED_FPinsetup_repository()if the GPG fingerprint changes. - Bump the version in
package.jsonand republish.
GitHub: github.com/stillYG108/Docker-Auto-Install
License
MIT © stillYG108
