Skip to content

Instantly share code, notes, and snippets.

@goldshadow0731
Created July 12, 2024 09:06
Show Gist options
  • Save goldshadow0731/c8a4b4d7df6c66150b7b05a4e01a5156 to your computer and use it in GitHub Desktop.
Save goldshadow0731/c8a4b4d7df6c66150b7b05a4e01a5156 to your computer and use it in GitHub Desktop.
#!/bin/sh
# ===== Prepare =====
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg lsb-release
# ===== Install =====
# ----- Docker -----
sudo mkdir -m 755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/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-get update
sudo apt-get install -y containerd.io docker-ce docker-ce-cli docker-buildx-plugin docker-compose-plugin
sudo groupadd docker
sudo usermod -aG docker $USER
# ===== Set config =====
# ----- containerd -----
sudo mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml
sudo sed -i 's/SystemdCgroup \= false/SystemdCgroup \= true/g' /etc/containerd/config.toml
# ----- docker -----
cat <<EOF | sudo tee /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now containerd
sudo systemctl enable --now docker
systemctl status --no-pager containerd
systemctl status --no-pager docker
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment