docker_install/01-arch_install.sh

40 lines
1012 B
Bash

#!/usr/bin/env bash
set -euo pipefail
# Update system and install Docker stack from official Arch repos
sudo pacman -Syu --noconfirm
sudo pacman -S --needed --noconfirm \
ca-certificates \
curl \
docker \
docker-buildx \
docker-compose
# Enable and start Docker daemon
sudo systemctl enable --now docker.service
# Allow current user to run docker without sudo after next login
if ! id -nG "$USER" | grep -qw docker; then
sudo usermod -aG docker "$USER"
fi
# Install bash aliases in a user-owned, Arch-friendly way
if [[ -f .bash_aliases ]]; then
install -Dm644 .bash_aliases "$HOME/.bash_aliases"
# Ensure ~/.bashrc loads ~/.bash_aliases
if [[ -f "$HOME/.bashrc" ]] && ! grep -qF '.bash_aliases' "$HOME/.bashrc"; then
cat >> "$HOME/.bashrc" <<'EOF'
# Load user aliases if present
if [[ -f ~/.bash_aliases ]]; then
. ~/.bash_aliases
fi
EOF
fi
fi
echo
echo "Done."
echo "Docker is installed and the service is running."
echo "Log out and back in before using docker without sudo."