Docker 入门与实战:从安装到容器管理的完整指南

🚀 Docker 入门与实战:从安装到容器管理的完整指南 🌟


📖 简介

在现代软件开发中,容器化技术已经成为不可或缺的一部分。而 Docker 作为容器化领域的领头羊,以其轻量级、高效和跨平台的特性,深受开发者们的喜爱。本文将带你从零开始,逐步掌握 Docker 的安装、配置以及日常使用技巧,并结合实际案例为你提供一份详实的 Docker 使用指南。无论你是初学者还是有一定经验的开发者,都能从中受益!🚀


🔧 目录

🛠 安装 Docker

1. 更新系统并安装依赖

在安装 Docker 之前,确保你的系统是最新的,并安装必要的依赖包。

sudo apt-get update
sudo apt-get install ca-certificates curl

2. 添加 Docker 官方 GPG 密钥

为了确保下载的软件包安全,我们需要添加 Docker 的官方 GPG 密钥并设置权限

sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

如果遇到网络问题、防火墙限制或 SSL 配置问题,可以使用国内镜像源:
curl: (35) OpenSSL SSL_connect: 连接被对方重设 in connection to download.docker.com:443

使用国内镜像源下载 GPG 密钥。例如,清华大学开源镜像站:

sudo curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

3. 设置 Docker 存储库

接下来,我们将 Docker 的存储库添加到系统的 APT 源列表中。

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4. 安装 Docker 引擎

更新包索引后,安装 Docker Engine 和相关工具。

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

5. 查看 Docker 和 Docker Compose 版本

在安装完成后,可以通过以下命令验证 Docker 和 Docker Compose 是否正确安装并查看其版本信息:

docker --versiondocker -v

输出示例:

Docker version 27.5.1, build 9f9e405

如果你使用的是新版 Docker Compose(从 Docker Desktop 3.4.0 和 Docker Engine 20.10.13 开始,Docker Compose 已被集成到 Docker CLI 中),可以使用以下命令查看版本:

docker compose version

输出示例:

Docker Compose version v2.32.4

注意:旧版独立安装的 Docker Compose 使用 docker-compose --version 查看版本。

6. 启动 Docker 服务

安装完成后,Docker 服务通常会默认自启。如果未启动,可以通过以下命令手动启动 Docker 服务。

方法 1:使用 service 命令
sudo service docker start   # 启动 Docker 服务
sudo service docker status  # 查询 Docker 服务状态
方法 2:使用 systemctl 命令
sudo systemctl start docker.service   # 启动 Docker 服务
sudo systemctl status docker.service  # 查询 Docker 服务状态

两种方法的区别

  • service 命令:这是一个较老的服务管理工具,兼容性较好,适用于 SysVinit 系统(如较旧的 Ubuntu 版本)。
  • systemctl 命令:这是 systemd 系统的服务管理工具,适用于现代 Linux 发行版(如 Ubuntu 16.04 及更高版本)。推荐在支持 systemd 的系统中使用 systemctl,因为它功能更强大且更灵活。

7. 验证安装

通过运行一个简单的测试镜像来验证 Docker 是否安装成功。

sudo docker run hello-world

如果一切顺利,你将看到类似以下的输出:

Hello from Docker!
This message shows that your installation appears to be working correctly.

8. 设置 Docker 服务开机自启

为了确保 Docker 服务在宿主机启动时自动运行,需要将其设置为开机自启。以下是具体操作步骤:

  1. 检查 Docker 服务状态

    systemctl status docker
    
  2. 启用 Docker 服务开机自启
    如果未启用开机自启,执行以下命令:

    sudo systemctl enable docker
    
  3. 验证设置是否生效
    重启宿主机后,检查 Docker 服务是否已自动启动:

    systemctl is-enabled docker
    

    输出示例:

    enabled
    

📊 Docker 常用命令

命令 描述
docker --versiondocker -v 查看 Docker 的版本信息
docker images 查看本地所有镜像
docker pull <image_name> 从 Docker Hub 拉取镜像
docker rmi <image_id> 删除本地镜像
docker ps 查看正在运行的容器
docker ps -a 查看所有容器(包括已停止的)
docker run -it <image_id> 启动一个新的容器并进入交互模式
docker start <container_id> 启动已停止的容器
docker stop <container_id> 停止正在运行的容器
docker rm <container_id> 删除容器
docker restart <container_id> 重启容器
docker exec -it <container_id> /bin/bash [-c '执行的命令'] 进入正在运行的容器内部并执行命令

启动容器

启动一个新的容器时,可以使用以下命令,并根据需要设置容器名称、运行模式、伪终端分配和端口映射等选项:

docker run [OPTIONS] <image_id>
基础设置
  • 指定容器名称--name="name"
    为容器指定一个名称。例如:

    docker run --name=my_container <image_id>
    
  • 后台运行-d
    后台运行容器,并返回容器 ID。例如:

    docker run -d <image_id>
    
  • 前台运行-i-t
    前台:-i: 以交互模式运行容器,通常与 -t 一起使用。

    是否分配伪终端:-t: 为容器重新分配一个伪输入终端,通常与-i同时使用

    例如:

    docker run -it <image_id> /bin/bash
    
网络设置
  • 端口映射-p
    指定主机和容器之间的端口映射关系。例如:

    docker run -p 8000:8000 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

X_taiyang18

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值