欢迎光临
我们一直在努力

教你在云服务器上部署 docker(Ubuntu版本)

部署 docker(Ubuntu版本)

文章目录

  • 部署 docker(Ubuntu版本)
  • 1. 操作系统准备
  • 2. 准备工作
    • 2.1 检查版本
    • 2.2 检查 CPU
    • 2.3 检查是否 docker 曾经安装过
    • 2.4 卸载 docker (确定需要卸载,再执行)
      • 卸载旧版本:
      • 卸载历史版本:
  • 3. 安装 docker
    • 3.1 配置 Docker 下载源(Ubuntu)
    • 3.2 安装 docker 组件
    • 3.3 检查 docker
    • 3.4 自动启动配置
  • 4. 检测 docker 服务是否正常
    • 4.1 安装成功界面
    • 4.2 异常结果(大多数情况):
      • 解决方法:配置 Docker 镜像加速器
  • 5. 退出 docker 服务
    • 操作步骤
    • 重新启动 docker容器 & docker服务
  • 6. 结尾:

云服务器,或者是通过虚拟机(VMware Workstation Pro)的Linux系统,都可以通过这个博客,安装 docker。

1. 操作系统准备

建议是 Ubuntu 20.04 (LTS) 往上走的,当然,一般购买的云服务器,都是 Ubuntu 最新版本的

虚拟机(VMware Workstation Pro)的Linux系统,也建议是 Ubuntu 20.04 (LTS) 往上走的

2. 准备工作

2.1 检查版本

使用 Xshell 连接好云服务器之后,输入指令:cat /etc/*release*

在这里插入图片描述

2.2 检查 CPU

确定 CPU,可以看到我们的是 X86_64,是支持的,如果是 arm 一般会显示 aarch64

输入指令:uname -a 在这里插入图片描述

2.3 检查是否 docker 曾经安装过

输入指令:docker version

如果是输出这样的,证明你没有安装过,不需要再执行 1.1.4 标题的卸载操作。 在这里插入图片描述 如果是输出下面这种,说明你安装过,需要执行卸载命令,重新安装一下最新的

Client:
Version: 29.0.0

Server:
Engine:
Version: 29.0.0

2.4 卸载 docker (确定需要卸载,再执行)

卸载旧版本,如果是新购买的云服务器是没有的,比如输入 docker 并没有这个命令,就不需要卸载。

卸载旧版本:

输入指令:sudo apt-get remove docker docker-engine docker.io containerd runc

在这里插入图片描述

卸载历史版本:

输入指令:

#卸载软件
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras -y

#删除目录
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

卸载软件的指令有点长,怕你复制之后会截断,我就给你复制出来:sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras -y

在这里插入图片描述 到这里,我们就卸载好 docker 了。可以开始重新安装 docker 了。

3. 安装 docker

3.1 配置 Docker 下载源(Ubuntu)

  • 安装 curl
  • sudo apt update

    sudo apt install -y curl


  • 创建 GPG Key 存放目录
  • sudo mkdir -m 0755 -p /etc/apt/keyrings

    这个 GPG Key,相当于是一个签名,需要下载这个签名,然后根据这个签名,才可以下载 Docker

    这个也是处于安全考虑的


  • 下载 Docker 官方 GPG Key
  • 输入指令:curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor –yes -o /etc/apt/keyrings/docker.gpg


  • 添加 Docker 官方软件源
  • echo \\
    "deb [arch=$(dpkg –print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \\
    $(lsb_release -cs) stable"
    | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

    我们可以查看这个文件夹下,存放了什么

    指令:cat /etc/apt/sources.list.d/docker.list

    输出的结果是:

    deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable

    这些文件表示当前 Docker 软件源配置为:

    • 架构:amd64
    • GPG Key:/etc/apt/keyrings/docker.gpg
    • 软件源地址:https://download.docker.com/linux/ubuntu
    • Ubuntu 版本:jammy(Ubuntu 21.04)
    • 软件源分支:stable

  • 更新软件源
  • sudo apt update

    更新软件源,是因为我们第四步,已经 添加了Docker官方软件源 了。

    3.2 安装 docker 组件

    输入指令:

    sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

    这条指令下载的东西有:

    软件包作用是否必须
    docker-ce Docker Engine(Docker 引擎),负责创建、运行、停止容器 ✅ 必须
    docker-ce-cli Docker 命令行工具,例如 docker run、docker ps ✅ 必须
    containerd.io 容器运行时,真正负责创建和管理容器 ✅ 必须
    docker-buildx-plugin Docker Buildx 插件,用于增强镜像构建能力 ⭐ 推荐
    docker-compose-plugin Docker Compose 插件,用于管理多个容器 ⭐ 推荐

    如果你的云服务器版本比较新,可能会出现这个界面:

    在这里插入图片描述 这个界面不是 Docker 安装报错,不用紧张。它是 Linux 在安装/更新软件时弹出来的一个服务重启确认界面。

    那么,你的下一步操作是: 按 Tab → 选中 <Ok> → 按 Enter 即可。

    如果你的界面长这样: 在这里插入图片描述

    说明你的 docker 安装好了。

    3.3 检查 docker

    输入指令:docker –version

    如果输出结果是这样的:

    root@你自己的云服务器名称:~# docker –version
    Docker version 29.6.2, build dfc4efb

    说明安装成功了。

    另外还有两个指令能检测:

    # 查看 Client / Server 版本
    docker version

    # 查看 Docker 运行状态
    docker info

    3.4 自动启动配置

    下面的指令,一条一条的执行

    #配置加载
    sudo systemctl daemon-reload

    #启动服务
    sudo systemctl start docker

    #开启启动
    sudo systemctl enable docker

    #查看服务状态
    sudo systemctl status docker

    如果上述指令没有出现报错,且出现这个页面: 在这里插入图片描述 说明 docker 安装成功,服务也启动起来了,可以使用 docker 了。

    4. 检测 docker 服务是否正常

    4.1 安装成功界面

    执行命令:

    sudo docker run hello-world

    如果界面是这样的:

    在这里插入图片描述

    说明我们的 docker 已经完全安装完成,后续可以使用了

    4.2 异常结果(大多数情况):

    如果是出现这样的结果:

    root@iZwz9gkais4sddfp76izy7Z:~# sudo docker run hello-world
    Unable to find image 'hello-world:latest' locally
    docker: Error response from daemon: failed to resolve reference "docker.io/library/hello-world:latest": failed to do request: Head "https://registry-1.docker.io/v2/library/hello-world/manifests/latest": dial tcp 174.37.243.85:443: i/o timeout

    Run 'docker run –help' for more information

    这是因为,服务器访问 Docker Hub 网络不通或者很慢

    这种情况,是国内最常见的问题。

    解决方法:配置 Docker 镜像加速器

    编辑配置文件:

    sudo mkdir -p /etc/docker
    sudo nano /etc/docker/daemon.json

    写入:

    {
    "registry-mirrors": [
    "https://docker.1ms.run"
    ]
    }

    在这里插入图片描述

    输入好之后,跟着我按:

  • Ctrl + O

    底部会出现类似:

    File Name to Write: /etc/docker/daemon.json

  • Enter

    即可保存

  • Ctrl + X

    退出编辑界面

  • 保存后执行:

    sudo systemctl daemon-reload
    sudo systemctl restart docker

    然后再试:

    docker run hello-world

    最后,出现这个界面:

    在这里插入图片描述

    说明我们的 docker 已经完全安装完成,后续可以使用了

    5. 退出 docker 服务

    操作步骤

  • 停止 compose 项目(优雅关闭容器)
  • docker compose -p bite_wear -f docker-compose-mid.yml down

    这个命令会停止并删除容器,数据卷的数据不会丢,后续可以重新 up 起来。

  • 关闭整个 docker 服务
  • systemctl stop docker

    此时 docker 完全停止,容器全部不运行,释放内存。

    重新启动 docker容器 & docker服务

    # 启动docker服务
    systemctl start docker
    # 重新拉起容器
    docker compose -p bite_wear -f docker-compose-mid.yml up -d

    6. 结尾:

    最后,如果这篇博客能帮到你的,请你点点赞,有写错了,写的不好的,欢迎评论指出,谢谢!

    赞(0)
    未经允许不得转载:171主机测评 » 教你在云服务器上部署 docker(Ubuntu版本)
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址