Debian Minimal系统使用容器技术指南
Debian Minimal作为轻量级系统,非常适合部署容器技术(如Docker),既能保证系统资源的高效利用,又能实现应用的隔离与快速部署。以下是具体使用步骤:
在Debian Minimal系统上,首先需要安装Docker Engine,它是运行容器的核心工具。
sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
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
sudo apt update
sudo apt -y install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker
sudo docker run hello-world
若输出“Hello from Docker!”,则说明Docker安装成功。安装完成后,可通过Docker快速启动Debian容器,用于测试或运行应用。
slim版本减小体积):sudo docker pull debian:bullseye-slim
sudo docker run -it --name my-debian debian:bullseye-slim /bin/bash
此时将进入容器的bash终端,可执行apt update、apt install vim等命令操作容器内的Debian系统。sudo docker pssudo docker stop my-debiansudo docker start my-debiansudo docker rm my-debiansudo docker rmi debian:bullseye-slimsudo docker logs my-debiansudo docker exec -it my-debian /bin/bash若需要部署特定应用(如Python、Golang),可通过编写Dockerfile自定义镜像,实现应用与环境的打包。
mkdir my-python-app && cd my-python-app
# 构建阶段(使用官方Python镜像)
FROM python:3.9-slim as builder
WORKDIR /app
COPY requirements.txt .
RUN pip install --user -r requirements.txt
# 运行阶段(基于Debian slim,仅复制必要的文件)
FROM debian:bullseye-slim
WORKDIR /app
COPY --from=builder /root/.local /root/.local
COPY . .
ENV PATH=/root/.local/bin:$PATH
EXPOSE 5000
CMD ["python", "app.py"]
sudo docker build -t my-python-app .
sudo docker run -d -p 5000:5000 my-python-app
此时应用将在宿主机的5000端口运行,可通过http://localhost:5000访问。sudo docker run -d -p 5000:5000 -v /home/user/app_data:/app/data my-python-app
其中/home/user/app_data是宿主机目录,/app/data是容器内的挂载路径。sudo docker network create my-network
sudo docker run -d --network my-network --name my-debian debian:bullseye-slim
sudo docker run -d --network my-network --name my-python-app my-python-app
此时my-python-app可通过my-debian名称访问同网络中的Debian容器。debian:bullseye-slim),避免第三方镜像的安全风险。root用户运行容器,可通过--user参数指定非root用户(如--user 1000:1000)。slim版本镜像(如debian:bullseye-slim),并通过多阶段构建移除不必要的文件(如编译工具)。sudo apt update && sudo apt upgrade docker-ce)。