Server Setup

Install Essentials
sudo apt install curl git ufw -y 
  

Install Docker & Compose
# Add Docker repo
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
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
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y 
  

Allow your user to run Docker without sudo
sudo usermod -aG docker $USER
newgrp docker 
  

Enable firewall (UFW)
sudo ufw allow OpenSSH
sudo ufw allow 80,443/tcp
sudo ufw enable 
  