Skip to content

Instantly share code, notes, and snippets.

@parweb
Last active April 1, 2025 19:27
Show Gist options
  • Save parweb/c027751f313ddc64c725cbaf09bd17ca to your computer and use it in GitHub Desktop.
Save parweb/c027751f313ddc64c725cbaf09bd17ca to your computer and use it in GitHub Desktop.
Provision a new server
sudo apt-get update -y
# ssh config
sudo sed -i 's/^#Port 22/Port 38293/' /etc/ssh/sshd_config
sudo systemctl restart ssh
sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl restart ssh.socket
sudo ufw allow 38293/tcp
# caprover
sudo ufw allow 80,443,3000/tcp
sudo ufw enable
sudo ufw status
# docker
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
sudo apt-get update -y
sudo apt-get install ca-certificates curl -y
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update -y
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
sudo docker run -p 80:80 -p 443:443 -p 3000:3000 -e ACCEPTED_TERMS=true -v /var/run/docker.sock:/var/run/docker.sock -v /captain:/captain caprover/caprover
# utils
## btop
sudo apt-get install btop -y
## ctop
sudo apt-get install -y wget
wget https://github.com/bcicen/ctop/releases/download/v0.7.7/ctop-0.7.7-linux-amd64 -O ctop
chmod +x ctop
sudo mv ctop /usr/local/bin/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment