Ubuntu 安装 Docker(镜像加速)完整教程

Docker 是一款开源的应用容器引擎,允许开发者打包应用及其依赖包到一个轻量级、可移植的容器中。本文将介绍在 Ubuntu 系统上安装 Docker 的步骤。

1. 更新软件源

首先,更新 Ubuntu 系统的软件源:

bash 复制代码
sudo apt update

2. 安装基本软件

接下来,安装 Docker 所需要的基本软件:

bash 复制代码
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common lrzsz -y

3. 指定使用阿里云镜像

为提高 Docker 镜像的下载速度,可以选择使用阿里云的 Docker 镜像源。执行以下命令:

bash 复制代码
sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

4. 更新软件源

更新软件源以获取 Docker 的最新安装包:

bash 复制代码
sudo apt update

5. 安装 Docker CE(Community Edition)

执行以下命令安装 Docker:

bash 复制代码
sudo apt-get install docker-ce -y

查看 Docker 版本

安装完成后,可以通过以下命令查看 Docker 的版本:

bash 复制代码
docker version

配置可用镜像源

创建文件 daemon.json

切换到 /etc/docker 目录并创建 daemon.json 文件:

bash 复制代码
cd /etc/docker
sudo touch daemon.json

修改 daemon.json 文件

编辑 daemon.json 文件,加入如下内容:

bash 复制代码
sudo vim daemon.json

将以下内容复制到文件中:

json 复制代码
{
  "registry-mirrors": ["https://mirrors.aliyun.com"]
}

重启 Docker

修改完成后,重启 Docker 服务使配置生效:

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl restart docker

至此,Ubuntu 上的 Docker 安装和配置就完成了。

Docker 常用命令

1. 镜像相关命令

  • 搜索镜像

    bash 复制代码
    docker search 镜像名
  • 查看本地镜像

    bash 复制代码
    docker images
  • 查看正在运行的容器

    bash 复制代码
    docker ps
  • 运行镜像

    bash 复制代码
    docker run 镜像名/镜像ID
  • 拉取镜像

    bash 复制代码
    docker pull 镜像名:tag

    例如,拉取 jdk1.8

    bash 复制代码
    docker pull java:8
  • 删除镜像

    bash 复制代码
    docker rmi -f 镜像名/镜像ID

2. 容器相关命令

  • 关闭容器

    bash 复制代码
    docker stop 容器名/容器ID
  • 启动容器

    bash 复制代码
    docker start 容器名/容器ID
  • 删除容器

    bash 复制代码
    docker rm -f 容器名/容器ID
  • 进入容器内部

    bash 复制代码
    docker exec -it 容器名/容器ID bash
  • 查看容器信息

    bash 复制代码
    docker inspect 容器名/容器ID
  • 查看容器日志

    bash 复制代码
    docker container logs 容器名/容器ID
  • 从容器内复制文件

    bash 复制代码
    docker cp 容器名/容器ID:容器内文件地址 宿主机文件地址

Docker 镜像加速器配置

为了提升 Docker 镜像下载的速度,您可以使用国内的 Docker 镜像加速器。以下是一些常用的可用加速器地址:

可用加速器地址列表

配置加速器的方式

方式一:永久配置加速器地址
  1. 打开终端,创建或修改 /etc/docker/daemon.json 文件:

    bash 复制代码
    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
        "registry-mirrors": [
            "此处修改为从上面表格选用地址"
        ]
    }
    EOF
  2. 重载 Docker 配置并重启 Docker 服务:

    bash 复制代码
    sudo systemctl daemon-reload
    sudo systemctl restart docker
  3. 检查加速器是否生效,执行以下命令:

    bash 复制代码
    docker info

    如果输出中看到 Registry Mirrors,说明配置成功。

    bash 复制代码
    Registry Mirrors:
    https://docker.m.daocloud.io
方式二:临时替换原始命令

如果您只是想临时使用某个加速器镜像,只需在原命令前添加加速镜像地址。例如:

bash 复制代码
docker pull dockerpull.com/whyour/qinglong:latest

其中 dockerpull.com 替换为您从上面表格中选择的可用镜像地址。

测试加速器是否生效

  1. 在拉取镜像之前,移除本地的镜像:

    bash 复制代码
    docker rmi node:latest
  2. 使用 time 命令测速:

    bash 复制代码
    time docker pull node:latest
  3. 输出将包含总时间、用户时间和系统时间,如下:

    bash 复制代码
    real   1m14.078s
    user   0m0.176s
    sys    0m0.120s

毫秒镜像加速器配置

方式一(永久):使用以下命令配置加速器:
bash 复制代码
echo '{"registry-mirrors": ["https://docker.1ms.run"]}' | sudo tee /etc/docker/daemon.json > /dev/null
sudo systemctl daemon-reload
sudo systemctl restart docker
方式二(临时):使用以下命令拉取镜像:
bash 复制代码
docker pull docker.1ms.run/nginx:latest

这里的 nginx:latest 可以替换成您需要的镜像和版本。

相关推荐
蝎子莱莱爱打怪7 小时前
GitLab CI/CD + Docker Registry + K8s 部署完整实战指南
后端·docker·kubernetes
chlk12314 小时前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑14 小时前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件15 小时前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号1 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash1 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
小p1 天前
docker学习7:docker 容器的通信方式
docker
小p1 天前
docker学习5:提升Dockerfile水平的5个技巧
docker
小p1 天前
docker学习3:docker是怎么实现的?
docker
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github