1. 移除老版本 Docker

sudo apt-get remove docker docker-engine docker.io containerd runc

Tips:如果第一步你这里报了如下错误:

E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

那么你需要进行如下操作:

找到 apt 进程毕竟将它们强制停止

ps -A | grep apt
1436 ?        00:00:00 apt.systemd.dai
1441 ?        00:00:00 apt.systemd.dai
kill -9 1436 1441

再次确认是否已经将所有 apt 进程强制停止

ps -A | grep apt

删除锁定文件

rm /var/lib/dpkg/lock
rm /var/lib/apt/lists/lock
rm /var/cache/apt/archives/lock

更新 apt

apt update

2. 设置 Docker 仓库

# 更新索引
sudo apt update
# 安装 apt 依赖包,用于通过HTTPS来获取仓库
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common
# 添加 Docker 的官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# 通过搜索指纹的后8个字符,验证您现在是否拥有带有指纹的密钥
sudo apt-key fingerprint 0EBFCD88
# 设置阿里云 docker 镜像仓库
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

3. 安装 Docker

# 更新索引
sudo apt update
# 安装最新版Dokcer
sudo apt-get install docker-ce docker-ce-cli containerd.io
# 设置开机自启动并启动 Docker-ce(安装成功后默认已设置并启动,可忽略)
sudo systemctl enable docker
sudo systemctl start docker
# 添加当前用户到 docker 用户组,可以不用 sudo 运行 docker
sudo groupadd docker
sudo usermod -aG docker $USER
sudo newgrp docker
# 输入 命令 检查一下是否安装成功
docker version
docker run hello-world

4. 配置镜像加速器

打开:/etc/docker/daemon.json 文件(如果不存在则需自己手动创建),将该文件的内容替换为如下内容:

{
  "registry-mirrors" : [
    "http://docker.mirrors.ustc.edu.cn",
    "http://hub-mirror.c.163.com"
  ],
  "insecure-registries" : [
    "docker.mirrors.ustc.edu.cn"
  ],
  "debug" : true,
  "experimental" : true
}

重启 Docker 服务:

sudo systemctl daemon-reload
sudo systemctl restart docker

Tips:你还可以配置自己的阿里云镜像加速器进行加速,方式如下:

访问地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

在这里插入图片描述

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://你的镜像地址.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

5. 卸载 Docker

# 卸载软件
sudo apt-get purge docker-ce docker-ce-cli containerd.io
# 删除目录
sudo rm -rf /var/lib/docker

6. 帮助命令

# 查看版本号
docker version
# 显示系统信息(详细)
docker info
# 帮助命令
docker --help

Tips:官方帮助文档地址:https://docs.docker.com/reference/

7. 镜像命令

# 查看所有镜像
docker images
# 搜索镜像
docker search
# 下载镜像
docker pull [镜像名]:[版本号]
# 删除镜像
docker rmi 镜像ID1 镜像ID2 镜像ID3
	-f 强制删除

8. 容器命令

# 复制容器中的文件
docker cp 容器ID:目标文件在容器的中的绝对路径 宿主机文件路径
# 列出所有容器
docker ps -a
# 退出容器(已在容器内)
exit(关闭并退出)
Ctrl + P + Q (只退出,不关闭)
# 删除容器
docker rm 镜像名
	-f 强制删除
# 删除所有容器
docker rm -f $(docker ps -aq)
# 启动、重启、停止容器
docker start 容器ID(启动容器)
docker restart 容器ID(重启容器)
docker stop 容器ID(停止容器)
docker kill 容器ID(强制结束)

9. 其他常用命令

# 后台启动
docker run -d 镜像名
# 查看日志
docker logs -tf --tail 20 容器ID
# 容器内部进程信息
docker top 容器ID
# 查看镜像元数据
docker inspetc 容器ID
# 进入当前正在运行的容器
docker exec -it 容器ID /bin/bash(新建窗口)
docker attach 容器ID

相关

CentOS安装docker

------------------------------------------- 你我皆平凡,因勇敢而伟大。 -------------------------------------------

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐