2.3 KiB
Executable file
docker_check
This script automates the process of ensuring Docker is installed and running before executing Docker-related commands.
Platform Support: macOS (Colima, Docker Desktop), Linux (apt, yum, dnf, pacman)
Usage
Run the script without any arguments to automatically check if Docker is installed and running.
./docker_check
You can also specify a command as an argument to execute Docker-related commands. If the provided command is docker-compose, the script ensures Docker is running before executing docker-compose.
./docker_check [command]
Docker Runtime on macOS
On macOS, the script automatically detects and uses the available Docker runtime:
- Colima (preferred) - Lightweight container runtime using Lima
- Docker Desktop - Official Docker application
If both are installed, Colima is preferred. The script checks the runtime status and starts it if needed.
Installation Behavior
macOS
If Colima is installed:
- Checks if Colima is running (
colima status) - Starts Colima if not running (
colima start)
If Docker Desktop is installed:
- If Docker is not running, starts Docker Desktop (
open -a Docker)
If neither is installed:
- Prompts to choose between:
- Install Colima (lightweight, recommended) -
brew install colima - Install Docker Desktop (official) -
brew install --cask docker
- Install Colima (lightweight, recommended) -
Linux
- Detects package manager (apt, yum, dnf, or pacman)
- If Docker is not installed, prompts to install using the detected package manager
- Installs both
docker.io(ordocker) anddocker-compose - Enables and starts the Docker service (
systemctl enable --now docker) - Adds the current user to the
dockergroup (requires logout/login) - If Docker is not running, starts it via
systemctl start docker
Example Usage
Automatically check if Docker is installed and running:
./docker_check
Execute a Docker command:
./docker_check docker run hello-world
Execute a Docker Compose command:
./docker_check docker-compose up -d
Installing Colima (macOS)
To install Colima manually:
brew install colima
Then start it:
colima start
Colima provides a Docker-compatible CLI without the overhead of Docker Desktop.