Ubuntu安装Docker及配置镜像加速与常见命令超详细教程

 更新时间:2025年12月18日 10:46:53   作者:Elon写代码  
Docker是一种流行的容器化平台,它能够简化应用程序的部署和管理,这篇文章主要介绍了Ubuntu安装Docker及配置镜像加速与常见命令的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

一、前言

Docker 已经成为现代软件开发、测试和部署的基石。它通过容器化技术,让应用及其依赖可以打包在一起,在任何环境中以一致的方式运行。对于开发者(尤其是像我们Java后端的)来说,无论是部署微服务、搭建测试环境(如 MySQL, Redis, Nacos),还是实现 CI/CD,Docker 都是必备技能。

这篇博客是我在 Ubuntu 系统上安装和使用 Docker 的个人笔记,涵盖了安装、配置和常用命令,希望能帮助大家少走弯路。

二、Docker 的安装 (Ubuntu)

我们的安装步骤将使用阿里云的镜像源,这可以大大提高安装速度。

1. 卸载旧版本(可选)

如果你的系统之前安装过旧的 Docker 版本,建议先执行卸载:

# 执行以下命令卸载可能存在的旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc

2. 配置 Docker 的 APT 仓库

我们需要添加 Docker 官方的 GPG 密钥(用于验证软件包)并设置 APT 软件源。

# 1. 更新apt包索引并安装依赖,以允许apt通过HTTPS使用仓库
sudo apt-get update
sudo apt-get install -y ca-certificates curl

# 2. 添加Docker的官方GPG密钥(使用阿里云镜像加速)
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# 3. 设置Docker的APT软件源(同样使用阿里云镜像)
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 4. 更新apt包索引,建立缓存
sudo apt-get update

3. 安装 Docker

配置好软件源后,我们就可以执行安装了:

# 执行命令,安装Docker CE(社区版)相关组件
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

4. 启动和校验

安装完成后,启动 Docker 并设置为开机自启。

# 启动Docker
sudo systemctl start docker

# 设置开机自启
sudo systemctl enable docker

# 校验安装启动是否成功(不报错即可)
sudo docker ps

当你看到 docker ps 命令成功输出(即使是空的列表),说明 Docker 已经安装并成功运行了。

三、配置镜像加速(强烈建议!)

在国内直接从 Docker Hub(官方库)拉取镜像(docker pull)时,速度会非常慢,甚至经常失败。因此,配置国内的镜像加速器是必须的步骤。

1. 编辑 daemon.json 配置文件

我们需要创建或编辑 /etc/docker/daemon.json 文件。这里我们使用 tee 命令直接写入内容,比 nanovim 更方便。(直接完整的复制粘贴即可)

# 使用tee命令将配置内容写入daemon.json文件
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://docker.registry.cyou",
    "https://docker-cf.registry.cyou",
    "https://dockercf.jsdelivr.fyi",
    "https://docker.jsdelivr.fyi",
    "https://dockertest.jsdelivr.fyi",
    "https://mirror.aliyuncs.com",
    "https://dockerproxy.com",
    "https://mirror.baidubce.com",
    "https://docker.m.daocloud.io",
    "https://docker.nju.edu.cn",
    "https://docker.mirrors.sjtug.sjtu.edu.cn",
    "https://docker.mirrors.ustc.edu.cn",
    "https://mirror.iscas.ac.cn",
    "https://docker.rainbond.cc",
    "https://do.nark.eu.org",
    "https://dc.j8.work",
    "https://gst6rzl9.mirror.aliyuncs.com",
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "http://mirrors.ustc.edu.cn/",
    "https://mirrors.tuna.tsinghua.edu.cn/",
    "http://mirrors.sohu.com/"
  ],
  "insecure-registries": [
    "registry.docker-cn.com",
    "docker.mirrors.ustc.edu.cn"
  ],
  "debug": true,
  "experimental": false
}
EOF

注意:上面的列表包含了非常多的镜像源。Docker 会按顺序尝试,选择最快的一个。

2. 重新加载配置并重启 Docker

修改配置后,必须重新加载并重启 Docker 服务才能生效。

sudo systemctl daemon-reload 
sudo systemctl restart docker

现在,你再执行 docker pull(例如 docker pull nginx),会发现速度有了质的飞跃。

四、Docker 常见指令

以下是我在日常使用中总结的常用命令。

1. Docker 服务相关命令 (systemctl)

systemctl start docker    # 开启docker
systemctl stop docker     # 停止docker
systemctl restart docker  # 重启docker
systemctl enable docker   # 设置开机启动docker
systemctl status docker   # 查看docker状态

2. 镜像相关命令

docker images             # 查看本地所有镜像
docker search [镜像名]     # 从Docker Hub搜索镜像
docker pull [镜像名]:[版本] # 拉取镜像(不写版本默认latest)
docker rmi [镜像ID/镜像名]  # 删除指定镜像
docker rmi -f $(docker images -aq) # 强制删除所有镜像

3. 容器相关命令

这是 Docker 命令的核心,特别是 docker run

# 查看容器
docker ps                 # 查看正在运行的容器
docker ps -a              # 查看所有容器(包括已停止的)

# 运行容器 (docker run)
docker run [参数] [镜像名] # 基于镜像启动一个新容器

docker run常见参数详解:

docker run 是最复杂的命令,掌握好参数非常重要:

  • -d: 后台运行容器(daemonize)。

  • -p [宿主机端口]:[容器端口]: 端口映射。例如 -p 8080:80,将宿主机的 8080 端口映射到容器的 80 端口。

  • -v [宿主机目录]:[容器目录]: 卷挂载。用于数据持久化,例如 -v /mydata/mysql:/var/lib/mysql

  • --name [容器名]: 为容器指定一个名称,方便管理。

  • -e [环境变量名]=[值]: 设置环境变量。例如 -e MYSQL_ROOT_PASSWORD=123456

  • --network [网络名]: 指定容器加入的网络。

  • --restart=always: 设置容器的重启策略。always 表示无论何种情况退出,都自动重启。

示例:

# 启动一个Nginx容器,命名为my-nginx,后台运行,并将宿主机的80端口映射到容器的80端口
docker run -d -p 80:80 --name my-nginx nginx

其他容器命令:

# 启动/停止/重启 容器
docker start [容器名/ID]    # 启动已停止的容器
docker stop [容器名/ID]     # 停止正在运行的容器
docker restart [容器名/ID]  # 重启容器

# 删除容器
docker rm [容器名/ID]       # 删除已停止的容器
docker rm -f [容器名/ID]    # 强制删除正在运行的容器
docker rm $(docker ps -aq)  # 删除所有已停止的容器

# 查看日志
docker logs [容器名/ID]       # 查看容器日志
docker logs -f [容器名/ID]    # 实时查看容器日志(类似 tail -f)

# 容器开机自启(针对已创建的容器)
docker update --restart=always [容器名/ID]

总结 

到此这篇关于Ubuntu安装Docker及配置镜像加速与常见命令的文章就介绍到这了,更多相关Ubuntu安装Docker配置镜像加速内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 亲手教你Docker Compose安装DOClever的详细过程

    亲手教你Docker Compose安装DOClever的详细过程

    DOClever是一个可视化免费开源的接口管理工具,DOClever前后端全部采用了javascript来作为我们的开发语言。这篇文章主要介绍了Docker Compose安装DOClever的详细过程,需要的朋友可以参考下
    2021-09-09
  • docker客户端访问harbor及安装配置更新

    docker客户端访问harbor及安装配置更新

    这篇文章主要介绍了docker客户端访问harbor以及harbor的安装配置更新步骤详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • docker项目部署的教程(Vue+springboot)

    docker项目部署的教程(Vue+springboot)

    这篇文章主要介绍了docker项目部署的教程(Vue+springboot),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • docker daemon远程连接设置详解

    docker daemon远程连接设置详解

    本篇文章主要介绍了docker daemon远程连接设置详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • Ubuntu中Docker报错“Cannot connect to the Docker daemon at unix:///var/run/docker.sock”错误解决办法

    Ubuntu中Docker报错“Cannot connect to the Docker daemon at

    这篇文章主要介绍了Ubuntu中Docker报错“Cannot connect to the Docker daemon at unix:///var/run/docker.sock”错误解决办法的相关资料,这个问题通常表示Docker 守护进程未运行或者当前用户没有权限访问Docker守护进程,需要的朋友可以参考下
    2026-04-04
  • Harbor支持推送Helm chart包方式

    Harbor支持推送Helm chart包方式

    文章介绍了如何使用Harbor和Helm管理和推送Helm Charts,首先,确保Harbor安装时启用了ChartMuseum组件,并安装了Helm CLI,然后,通过添加Harbor为Helm仓库并使用helmcm-push插件推送Chart到Harbor,用户可以在Harbor UI查看和管理Charts,并通过Helm从Harbor拉取已上传的Chart
    2025-10-10
  • Windows10系统下docker安装指南以及踩坑解决

    Windows10系统下docker安装指南以及踩坑解决

    这篇文章主要给大家介绍了关于Windows10系统下docker安装指南以及踩坑解决的相关资料,相信大家都知道Docker有很多种安装的选择,其中支持最好的是Ubuntu系统,而且docker如果想在windows上运行必须借助docker-machine,需要的朋友可以参考下
    2023-08-08
  • 在Ubuntu上使用Grafana监控Docker的方法

    在Ubuntu上使用Grafana监控Docker的方法

    如今越来越多的公司开始使用Docker,一谈起Docker总是会跟着让人联想到轻量这个词,甚至会有一种通过Docker启动一个服务会节省很多资源的错觉。然而Docker的「轻」也只是相对于传统虚拟机而已。Docker如何监控呢?本文就给大家介绍在Ubuntu上如何使用Grafana监控Docker。
    2016-12-12
  • 安装harbor作为docker镜像仓库的问题

    安装harbor作为docker镜像仓库的问题

    这篇文章主要介绍了安装harbor作为docker镜像仓库,主要包括docker和docker-compose离线部署,安装harbor作为本地的仓库,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • docker配置skywalking 监控springcloud应用的详细步骤

    docker配置skywalking 监控springcloud应用的详细步骤

    本文分步骤给大家讲解docker配置skywalking 监控springcloud应用的方法,感兴趣的朋友一起看看吧
    2025-04-04

最新评论