38 lines
935 B
Bash
38 lines
935 B
Bash
#!/bin/bash
|
|
# Jenkins initialization script to install Docker CLI
|
|
|
|
set -e
|
|
|
|
echo "Installing Docker CLI in Jenkins..."
|
|
|
|
# Update package list
|
|
apt-get update
|
|
|
|
# Install prerequisites
|
|
apt-get install -y \
|
|
ca-certificates \
|
|
curl \
|
|
gnupg \
|
|
lsb-release
|
|
|
|
# Add Docker's official GPG key
|
|
mkdir -p /etc/apt/keyrings
|
|
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
|
|
|
# Set up repository
|
|
echo \
|
|
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
|
|
$(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
|
|
|
|
# Install Docker CLI only (not daemon)
|
|
apt-get update
|
|
apt-get install -y docker-ce-cli
|
|
|
|
# Verify installation
|
|
docker --version
|
|
|
|
# Add jenkins user to docker group (if group exists on host)
|
|
usermod -aG docker jenkins || true
|
|
|
|
echo "✅ Docker CLI installed successfully!"
|