在这里插入图片描述

摘要

Docker 是一种容器化技术,传统的虚拟化可以通过硬件模拟或操作系统软件实现,但容器更高效和优雅,例如:

  • 传统方式(虚拟机):每运行一个应用,就必须虚拟出一套完整的硬件和操作系统(Guest
    OS)。这就像为了住一个人,必须盖一栋带有独立地基、大堂、电梯和保安系统的完整酒店。即使你的应用只有 10MB,你可能也要为此耗费数 GB 的系统资源。

  • Docker 方式:所有容器共享同一个宿主机的内核。这就像是一个巨大的胶囊旅馆,大家共用大堂、电梯和电力系统(宿主机内核),每个旅客只占用自己睡觉的小空间。一台服务器可以轻松运行成百上千个容器。

市面上也有很多容器技术, Docker 应该是最流行的、最成熟的,因此本文先从 Docker 安装开始。 Docker 的官方网站如下:



一、 安装前的准备

在 windows 安装好 VMware 虚拟机,参考教程如下:

VMware17.6安装教程,VMware虚拟机安装Ubuntu 24.04,2025保姆级别教程

首先,点击界面上的 “开启此虚拟机”。登录后,按快捷键 Ctrl + Alt + T 打开终端。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1. 执行更新

默认源在国外,下载很慢。先执行更新:

sudo apt update

在这里插入图片描述

2. 安装基础依赖
sudo apt install -y ca-certificates curl gnupg lsb-release

在这里插入图片描述


二、 安装 Docker 社区版

为了保证安装的是最新且最稳定的版本,我们使用官方推荐的仓库安装法。

1. 添加 Docker 官方 GPG 密钥
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

在这里插入图片描述
使用阿里云的 GPG 密钥

curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

在这里插入图片描述
查看公钥信息:

sudo apt-key fingerprint 0EBFCD88

在这里插入图片描述

2. 设置 Docker 仓库

修改软件源地址

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
3. 安装docker
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

在这里插入图片描述
验证安装结果:

sudo systemctl status docker

在这里插入图片描述

4、配置镜像加速器

新建/修改配置文件:

sudo nano /etc/docker/daemon.json

在这里插入图片描述

在文件中粘贴以下内容:

{
  "registry-mirrors": [
    "https://dhq963f2.mirror.aliyuncs.com",
    "https://mirror.baidubce.com",
    "https://docker.m.daocloud.io"
  ]
}

粘贴进去
在这里插入图片描述

保存并退出(Nano 编辑器按 Ctrl+O 回车,再按 Ctrl+X

然后重启服务
在这里插入图片描述

sudo systemctl daemon-reload
sudo systemctl restart docker

验证是否配置成功

docker info

提示当前用户没有权限直接操作 Docker 进程。

解决方法:将当前用户加入 docker 组

sudo usermod -aG docker $USER

让权限生效,不需要重启整个电脑,只需执行:

newgrp docker

在这里插入图片描述
现在,请再次尝试运行那条命令(不需要加 sudo):

docker info

5、测试

拉取 hello-world 镜像

sudo docker pull hello-world
sudo docker run hello-world

看到 Hello from Docker! 输出,代表 Docker 已经成功安装。
在这里插入图片描述

三、Docker 常用命令

1. 系统服务管理(控制 Docker 引擎开关)

这部分命令通常在刚开机或 Docker 报错时使用。

操作命令说明
查看状态sudo systemctl status docker检查 Docker 是否正在运行(看绿色 active 标志)。
启动服务sudo systemctl start docker手动开启 Docker 引擎。
停止服务sudo systemctl stop docker关闭 Docker,停止所有正在运行的容器。
重启服务sudo systemctl restart docker修改配置(如镜像加速器)后必须执行此项。
设置开机自启sudo systemctl enable docker确保下次虚拟机开机时,Docker 自动启动。
2. 镜像与容器管理(日常开发最常用)

这部分是你操作 YOLO 镜像Django 容器 的核心。

操作命令说明
查看镜像docker images列出本地所有下载或构建的镜像。
删除镜像docker rmi 镜像ID删除不再需要的镜像以释放空间。
查看容器docker ps -a-a 表示查看所有容器(含已停止的)。
构建项目docker build -t 项目名:v1 .根据 Dockerfile 打包项目。
启动项目docker run -d -p 80:80 项目名-d 后台运行,-p 映射端口(宿主机:容器)。
停止容器docker stop 容器ID正常关闭正在运行的项目。
强制删除docker rm -f 容器ID删掉容器实例(不影响镜像)。
查看日志docker logs -f 容器ID调试神器:实时查看 Django 报错信息。
3. 进阶与项目编排

适合管理多个容器。

操作命令说明
进入项目docker exec -it 容器ID /bin/bash进入容器内部,像操作虚拟机一样改配置。
一键启动docker compose up -d根据 yml 文件一键启动整套全栈环境。
一键关闭docker compose down停止并移除整套项目的容器和网络。
清理垃圾docker system prune -a一键删除所有没用的镜像和缓存(慎用)。

💡 提示

  • 关于 sudo 如果已经执行过 sudo usermod -aG docker $USER 并重启了,那么上面表格中除了 systemctl 相关的系统命令外,其他的 docker 开头命令都不再需要加 sudo

更多推荐