Last active
November 21, 2023 13:41
-
-
Save BTabaku/7ad835e5d58c625e7ab88842ec977991 to your computer and use it in GitHub Desktop.
Setup docker on Cent-OS Script Removal/Reinstall
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Stop Docker if exist | |
sudo systemctl stop docker | |
# Remove Docker Packages | |
sudo yum remove docker-ce docker-ce-cli containerd.io | |
# Remove Docker Data (Optional) | |
sudo rm -rf /var/lib/docker | |
# Remove Docker Dependencies (Optional) | |
sudo yum autoremove | |
# Remove Docker User Group (Optional) | |
sudo groupdel docker | |
# Remove Docker Repository (Optional) | |
sudo rm -rf /etc/yum.repos.d/docker*.repo | |
echo "Docker has been removed from the system." | |
# Ensure the script is run as root | |
if [ "$(id -u)" != "0" ]; then | |
echo "This script must be run as root" 1>&2 | |
exit 1 | |
fi | |
# Stop any running Docker processes | |
sudo systemctl stop docker | |
# Remove the previous Docker installation | |
sudo yum remove -y docker \ | |
docker-client \ | |
docker-client-latest \ | |
docker-common \ | |
docker-latest \ | |
docker-latest-logrotate \ | |
docker-logrotate \ | |
docker-engine | |
# Set up the repository | |
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 | |
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo | |
# Install Docker Engine | |
sudo yum install -y docker-ce docker-ce-cli containerd.io | |
# Handle the Docker service | |
sudo systemctl start docker | |
sudo systemctl enable docker | |
sudo systemctl is-active --quiet docker && echo "Docker is running." | |
# Check if Docker group exists, add if it doesn't | |
if ! getent group docker > /dev/null 2>&1; then | |
sudo groupadd docker | |
fi | |
# Add the current user to the Docker group, if not already added | |
if ! groups $USER | grep &>/dev/null '\bdocker\b'; then | |
sudo usermod -aG docker $USER | |
fi | |
# Set permissions for Docker socket | |
sudo chown "$USER":docker /var/run/docker.sock | |
sudo chmod 660 /var/run/docker.sock | |
# Install the latest version of Docker Compose | |
sudo yum install -y yum-utils | |
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo | |
sudo yum install docker-ce docker-ce-cli containerd.io | |
sudo systemctl start docker | |
sudo systemctl enable docker | |
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | |
sudo chmod +x /usr/local/bin/docker-compose | |
# Verify installation | |
docker-compose --version | |
# Feedback | |
echo "Docker and Docker Compose have been installed and started." | |
# Post-installation message | |
echo "Please log out and back in to ensure your user is properly set up with Docker group permissions." |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment