fix: Skip Docker/Docker Compose installation when already installed

- Update ez-homelab.sh Step 3: Check if Docker is installed before attempting installation
- Update ez-homelab.sh Step 4: Check if Docker Compose is installed before attempting installation
- Update setup-homelab.sh Step 3: Improve Docker check to verify service status and start if needed
- Both scripts now skip installation and notify when components are already available
- Maintains backward compatibility and proper service management
This commit is contained in:
EZ-Homelab
2026-01-22 20:07:31 -05:00
parent 06ce59e02a
commit d4e6ce682b
2 changed files with 32 additions and 5 deletions

View File

@@ -230,13 +230,31 @@ system_setup() {
# Step 3: Install Docker # Step 3: Install Docker
log_info "Step 3/10: Installing Docker..." log_info "Step 3/10: Installing Docker..."
if command -v docker &> /dev/null && docker --version &> /dev/null; then
log_success "Docker is already installed ($(docker --version))"
# Check if Docker service is running
if ! systemctl is-active --quiet docker; then
log_warning "Docker service is not running, starting it..."
systemctl start docker
systemctl enable docker
log_success "Docker service started and enabled"
else
log_info "Docker service is already running"
fi
else
curl -fsSL https://get.docker.com | sh curl -fsSL https://get.docker.com | sh
usermod -aG docker "$ACTUAL_USER" usermod -aG docker "$ACTUAL_USER"
fi
# Step 4: Install Docker Compose # Step 4: Install Docker Compose
log_info "Step 4/10: Installing Docker Compose..." log_info "Step 4/10: Installing Docker Compose..."
if command -v docker-compose &> /dev/null && docker-compose --version &> /dev/null; then
log_success "Docker Compose is already installed ($(docker-compose --version))"
else
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
log_success "Docker Compose installed ($(docker-compose --version))"
fi
# Step 5: Configure UFW firewall # Step 5: Configure UFW firewall
log_info "Step 5/10: Configuring firewall..." log_info "Step 5/10: Configuring firewall..."

View File

@@ -79,7 +79,16 @@ echo ""
# Step 3: Install Docker # Step 3: Install Docker
log_info "Step 3/10: Installing Docker..." log_info "Step 3/10: Installing Docker..."
if command -v docker &> /dev/null && docker --version &> /dev/null; then if command -v docker &> /dev/null && docker --version &> /dev/null; then
log_warning "Docker is already installed ($(docker --version))" log_success "Docker is already installed ($(docker --version))"
# Check if Docker service is running
if ! systemctl is-active --quiet docker; then
log_warning "Docker service is not running, starting it..."
systemctl start docker
systemctl enable docker
log_success "Docker service started and enabled"
else
log_info "Docker service is already running"
fi
else else
# Add Docker's official GPG key # Add Docker's official GPG key
install -m 0755 -d /etc/apt/keyrings install -m 0755 -d /etc/apt/keyrings