Debian系统上的Docker安装和使用 – wiki基地

Debian系统上Docker的安装和使用详解

Docker 已经成为现代软件开发和部署流程中不可或缺的一部分。它通过容器化技术,将应用程序及其依赖项打包到一个独立的单元中,从而实现跨平台的一致性,简化部署流程,并提高资源利用率。本文将详细介绍如何在 Debian 系统上安装和使用 Docker,涵盖从准备工作到高级应用的各个方面。

一、准备工作

  1. 系统要求: 确保你的 Debian 系统满足 Docker 的最低系统要求。建议使用 Debian 10 (Buster) 或更高版本,64 位架构,并且拥有足够的内存和磁盘空间。

  2. 更新系统: 在安装 Docker 之前,最好更新系统软件包和内核,以确保兼容性和安全性。

bash
sudo apt update
sudo apt upgrade -y

  1. 卸载旧版本 (可选): 如果你之前安装过旧版本的 Docker 或其他容器技术,建议先卸载它们,以免发生冲突。

bash
sudo apt remove docker docker-engine docker.io containerd runc

二、Docker 的安装

有多种方法可以在 Debian 上安装 Docker,这里介绍官方推荐的两种方法:

方法一:使用仓库安装 (推荐)

  1. 设置仓库: 添加 Docker 的官方 GPG 密钥,并设置稳定的仓库。

bash
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

  1. 更新软件包列表并安装 Docker Engine:

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

方法二:手动下载安装包 (不推荐)

这种方法适用于无法访问互联网的离线环境。你需要从 Docker 官方网站下载对应的 .deb 安装包,然后使用 dpkg 命令进行安装。

三、Docker 的基本使用

  1. 验证安装: 安装完成后,运行 hello-world 镜像来验证 Docker 是否正常工作。

bash
sudo docker run hello-world

  1. 搜索镜像: 使用 docker search 命令搜索 Docker Hub 上的镜像。

bash
sudo docker search nginx

  1. 拉取镜像: 使用 docker pull 命令从 Docker Hub 下载镜像到本地。

bash
sudo docker pull nginx:latest

  1. 运行容器: 使用 docker run 命令启动一个容器。

bash
sudo docker run -d -p 80:80 nginx:latest

该命令将在后台运行一个 Nginx 容器,并将容器的 80 端口映射到主机的 80 端口。

  1. 查看容器: 使用 docker ps 命令查看正在运行的容器。

bash
sudo docker ps

  1. 停止容器: 使用 docker stop 命令停止容器。

bash
sudo docker stop <容器ID>

  1. 删除容器: 使用 docker rm 命令删除容器。

bash
sudo docker rm <容器ID>

  1. 删除镜像: 使用 docker rmi 命令删除镜像。

bash
sudo docker rmi nginx:latest

四、Docker Compose 的使用

Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。它使用 YAML 文件来配置应用程序的服务,然后使用单个命令即可创建和启动所有服务。

  1. 安装 Docker Compose: 在 Debian 上,Docker Compose 已经作为 Docker CE 的一部分安装。

  2. 创建 docker-compose.yml 文件: 创建一个名为 docker-compose.yml 的文件,并定义你的应用程序服务。

yaml
version: "3.9"
services:
web:
image: nginx:latest
ports:
- "80:80"
db:
image: mysql:latest
environment:
MYSQL_ROOT_PASSWORD: example

  1. 运行应用程序: 使用 docker-compose up 命令启动应用程序。

bash
sudo docker-compose up -d

  1. 停止应用程序: 使用 docker-compose down 命令停止应用程序。

bash
sudo docker-compose down

五、Docker 的高级应用

  1. 构建自定义镜像: 使用 Dockerfile 定义镜像的构建过程,并使用 docker build 命令构建镜像。

  2. 数据卷: 使用数据卷将容器内的数据持久化存储到主机上。

  3. 网络: 创建自定义网络,使容器之间可以互相通信。

  4. Docker Swarm: 使用 Docker Swarm 创建和管理 Docker 集群。

六、安全注意事项

  1. 非 root 用户: 尽量避免以 root 用户身份运行 Docker。可以使用 sudo usermod -aG docker $USER 命令将当前用户添加到 docker 组,然后重新登录。

  2. 镜像安全: 使用来自可信源的镜像,并定期更新镜像以获取最新的安全补丁。

  3. 资源限制: 为容器设置资源限制,防止容器占用过多的系统资源。

  4. 网络安全: 配置防火墙规则,限制对 Docker 容器的访问。

七、总结

本文详细介绍了在 Debian 系统上安装和使用 Docker 的方法,涵盖了从基本操作到高级应用的各个方面。Docker 的强大功能可以极大地简化软件开发和部署流程,提高效率和可靠性。希望本文能够帮助你更好地理解和使用 Docker。 通过不断的学习和实践,你可以进一步探索 Docker 的更多高级功能,并将其应用到你的实际项目中。 记住,保持学习和探索是掌握 Docker 的关键。 不断关注 Docker 社区和官方文档,可以帮助你及时了解最新的技术发展和最佳实践。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部