Docker

https://docs.docker.com/engine/install/

安装

CentOS

https://docs.docker.com/engine/install/centos/

rpm -qa |grep docker
yum list installed |grep docker
yum -y remove xxx
sudo yum remove docker \
    docker-client \
    docker-client-latest \
    docker-common \
    docker-latest \
    docker-latest-logrotate \
    docker-logrotate \
    docker-engine

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 docker-compose-plugin

yum list docker-ce --showduplicates | sort -r

sudo systemctl start docker

sudo docker run hello-world

docker run --name mysql57 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=dQ5X4wFLkBsW3cq -d mysql:5.7

debian

https://docs.docker.com/engine/install/debian/

# 卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc

# 更新apt包索引并安装包以允许apt通过 HTTPS 使用存储库
sudo apt-get update
sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

# 添加 Docker 的官方 GPG 密钥
sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/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/debian \
    $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    
# 安装 Docker 引擎
sudo apt-get update
# 安装 Docker Engine、containerd 和 Docker Compose
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 通过运行镜像验证 Docker Engine 安装是否成功 hello-world
sudo docker run hello-world

Root

如果您想以非 root 用户身份运行 docker,则需要将其添加到 docker 组。

  1. 如果不存在则创建 docker 组
sudo groupadd docker
  1. 将您的用户添加到 docker 组。
sudo usermod -aG docker $USER
  1. 登录到新docker组(以避免必须注销/重新登录;但如果不够,请尝试重新启动):
newgrp docker
  1. 检查docker是否可以在没有root的情况下运行
docker run hello-world

如果仍然出现错误,请重新启动

reboot