jsvalentin

Ubuntu Docker Install

Oct 7th, 2025 (edited)
531
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.74 KB | None | 0 0
  1. #!/bin/bash
  2. set -e
  3.  
  4. echo "=== Updating system ==="
  5. sudo DEBIAN_FRONTEND=noninteractive apt update -y
  6. sudo DEBIAN_FRONTEND=noninteractive apt upgrade -y -o Dpkg::Options::="--force-confold"
  7.  
  8. echo "=== Installing dependencies ==="
  9. sudo apt-get install -y ca-certificates curl gnupg lsb-release
  10.  
  11. echo "=== Adding Docker GPG key ==="
  12. sudo install -m 0755 -d /etc/apt/keyrings
  13. sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
  14. sudo chmod a+r /etc/apt/keyrings/docker.asc
  15.  
  16. echo "=== Adding Docker repository ==="
  17. echo \
  18.   "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \
  19.  https://download.docker.com/linux/ubuntu \
  20.  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  21.   sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  22.  
  23. echo "=== Installing Docker Engine and Compose ==="
  24. sudo apt-get update -y
  25. sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  26.  
  27. echo "=== Checking Docker service ==="
  28. if ! systemctl is-active --quiet docker; then
  29.   echo "Docker not running — starting it..."
  30.   sudo systemctl start docker
  31. else
  32.   echo "Docker is already running."
  33. fi
  34.  
  35. echo "=== Enabling Docker on boot ==="
  36. sudo systemctl enable docker
  37.  
  38. echo "=== Verifying installation ==="
  39. echo
  40. echo "Docker version:"
  41. docker --version || { echo "❌ Docker not found"; exit 1; }
  42.  
  43. echo
  44. echo "Docker Compose version:"
  45. docker compose version || { echo "❌ Docker Compose not found"; exit 1; }
  46.  
  47. echo
  48. echo "=== Running test container ==="
  49. docker run --rm hello-world || { echo "❌ Docker test failed"; exit 1; }
  50.  
  51. echo
  52. echo "✅ Everything is working properly! Docker and Compose are ready to use."
  53.  
Advertisement