在现代软件开发和运维中,Docker 已成为容器化部署的主流工具。而 Debian 作为一个稳定、轻量且广泛使用的 Linux 发行版,是运行 Docker 容器的理想选择。本文将手把手教你如何在 Debian 系统中安装、配置并管理 Docker 容器服务,即使你是完全的新手,也能轻松上手。
一、为什么选择 Debian 运行 Docker?
Debian 以其稳定性、安全性和庞大的软件仓库著称,非常适合用于服务器环境。结合 Docker 容器化技术,你可以快速部署、隔离和管理各种应用服务,实现高效、可移植的 Linux容器运维。
二、在 Debian 上安装 Docker
首先,确保你的 Debian 系统是最新的:
sudo apt updatesudo apt upgrade -y
接着,安装必要的依赖包:
sudo apt install -y ca-certificates curl gnupg lsb-release
添加 Docker 官方 GPG 密钥:
sudo mkdir -p /etc/apt/keyringscurl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
添加 Docker 仓库:
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
更新包索引并安装 Docker Engine:
sudo apt updatesudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
三、验证 Docker 是否安装成功
运行以下命令检查 Docker 服务状态:
sudo systemctl status docker
如果看到
active (running),说明 Docker 已成功启动。
你也可以运行一个测试容器:
sudo docker run hello-world
如果看到 “Hello from Docker!” 的欢迎信息,恭喜你,Docker 已正常工作!
四、管理 Docker 容器服务
在日常使用中,你可能需要启动、停止、查看或删除容器。以下是常用命令:
列出所有正在运行的容器:docker ps 列出所有容器(包括已停止的):
docker ps -a 启动一个容器(以 Nginx 为例):
docker run -d --name my-nginx -p 8080:80 nginx 停止容器:
docker stop my-nginx 删除容器:
docker rm my-nginx 五、让非 root 用户也能使用 Docker(可选但推荐)
默认情况下,Docker 需要 root 权限。为避免每次加
sudo
,可以将当前用户加入 docker
用户组:
sudo groupadd docker # 如果组不存在sudo usermod -aG docker $USER
然后重新登录系统或执行:
newgrp docker
之后就可以直接运行
docker run ...
而无需 sudo
了。 六、实战:部署一个 Web 服务
我们来用 Docker 快速部署一个简单的 Python Flask 应用:
1. 创建项目目录:
mkdir flask-app && cd flask-app
2. 创建
app.py
文件: from flask import Flaskapp = Flask(__name__)@app.route('/')def hello(): return "Hello from Debian Docker Container!"if __name__ == '__main__': app.run(host='0.0.0.0', port=5000) 3. 创建
Dockerfile
: FROM python:3.9-slimWORKDIR /appCOPY . /appRUN pip install flaskEXPOSE 5000CMD ["python", "app.py"]
4. 构建并运行容器:
docker build -t my-flask-app .docker run -d -p 5000:5000 --name flask-web my-flask-app
现在访问
http://你的服务器IP:5000
,就能看到网页输出了!这就是 容器化部署 的魅力。 七、总结
通过本教程,你已经掌握了在 Debian 系统中安装 Docker、管理容器服务以及部署简单应用的基本技能。无论是开发测试还是生产环境,Debian Docker容器 都能为你提供高效、隔离和可重复的运行环境。持续练习这些命令,你将逐步成长为一名熟练的 Linux容器运维 工程师。
记住,容器技术的核心在于“一次构建,到处运行”。善用 Docker,让你的服务部署更轻松!
