| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- #!/usr/bin/env bash
- # NAME: Install and configure Docker
- set -euo pipefail
- # Source common functions
- source "$(dirname "$0")/../common.sh" || {
- echo "[ERROR] Could not source common.sh" >&2
- exit 1
- }
- install_docker() {
- log_info "Installing Docker packages"
- sudo pacman -S --needed --noconfirm docker docker-compose docker-buildx
- }
- configure_docker() {
- log_info "Adding current user to docker group"
- sudo usermod -aG docker "$USER"
- log_info "Enabling Docker services"
- sudo systemctl enable docker.service
- sudo systemctl start docker.service
- sudo systemctl enable containerd.service
- sudo systemctl start containerd.service
- }
- main() {
- init_script
- install_docker
- configure_docker
- log_info "Docker installed successfully"
- log_warn "You need to log out and back in (or reboot) for group changes to take effect"
- log_info "Test with: docker run hello-world"
- finish_script 0
- }
- main "$@"
|