Files
WSL-Debian-Docker-Azerothco…/docker.sh
2025-05-10 08:21:07 +00:00

64 lines
2.3 KiB
Bash

#!/bin/bash
set -e
set -o pipefail
echo "[*] Updating system..."
sudo apt-get update && sudo apt-get dist-upgrade -y
echo "[*] Installing base packages..."
sudo apt-get install -y ca-certificates curl wget gnupg lsb-release apt-transport-https
# Only install genie if not already present
if ! command -v genie &> /dev/null; then
echo "[*] Setting up WSL genie (if running in WSL)..."
sudo wget -O /etc/apt/trusted.gpg.d/wsl-transdebian.gpg https://arkane-systems.github.io/wsl-transdebian/apt/wsl-transdebian.gpg
sudo chmod a+r /etc/apt/trusted.gpg.d/wsl-transdebian.gpg
echo -e "deb https://arkane-systems.github.io/wsl-transdebian/apt/ $(lsb_release -cs) main\n\
deb-src https://arkane-systems.github.io/wsl-transdebian/apt/ $(lsb_release -cs) main" | \
sudo tee /etc/apt/sources.list.d/wsl-transdebian.list > /dev/null
sudo apt-get update
sudo apt-get install -y systemd-genie
echo 'genie -i' >> ~/.bashrc
else
echo "✔️ Genie already installed."
fi
# Docker check and install if not already installed
if ! command -v docker &> /dev/null; then
echo "[*] Docker not found. Installing Docker..."
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \
https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo usermod -aG docker $USER
echo "✔️ Docker installed. Please log out and back in to apply group changes."
exit 1
else
echo "✔️ Docker is already installed."
fi
# Optional: Install docker-compose if not present
if ! command -v docker-compose &> /dev/null; then
echo "[*] Installing docker-compose..."
sudo curl -L "https://github.com/docker/compose/releases/download/2.32.4/docker-compose-$(uname -s)-$(uname -m)" \
-o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
else
echo "✔️ docker-compose is already installed."
fi
echo "✅ System preparation complete."