59 lines
1.8 KiB
Bash
Executable File
59 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
# Ubuntu Server Setup Script for Infoscreen Development
|
|
|
|
set -e
|
|
|
|
echo "🚀 Setting up Ubuntu Server for Infoscreen Development..."
|
|
|
|
# Update system
|
|
sudo apt update && sudo apt upgrade -y
|
|
|
|
# Install essential tools
|
|
sudo apt install -y git curl wget vim nano htop
|
|
|
|
# Install Docker (official installation method)
|
|
echo "📦 Installing Docker..."
|
|
|
|
# Remove old Docker packages
|
|
sudo apt remove -y docker docker-engine docker.io containerd runc 2>/dev/null || true
|
|
|
|
# Install Docker dependencies
|
|
sudo apt install -y ca-certificates curl gnupg lsb-release
|
|
|
|
# Add Docker GPG key
|
|
sudo mkdir -p /etc/apt/keyrings
|
|
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
|
|
|
# Add Docker repository
|
|
echo \
|
|
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
|
|
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
|
|
|
# Install Docker
|
|
sudo apt update
|
|
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
|
|
|
# Start and enable Docker
|
|
sudo systemctl enable docker
|
|
sudo systemctl start docker
|
|
|
|
# Add user to docker group
|
|
sudo usermod -aG docker $USER
|
|
|
|
# Install Node.js (for dashboard development)
|
|
echo "📦 Installing Node.js..."
|
|
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
|
|
sudo apt install -y nodejs
|
|
|
|
# Verify installations
|
|
echo "✅ Verifying installations..."
|
|
echo "Docker version: $(docker --version)"
|
|
echo "Docker Compose version: $(docker compose version)"
|
|
echo "Node.js version: $(node --version)"
|
|
echo "npm version: $(npm --version)"
|
|
|
|
echo ""
|
|
echo "🎉 Server setup complete!"
|
|
echo "⚠️ Please log out and log back in for Docker group changes to take effect."
|
|
echo "💡 You can now clone your repository and start development."
|