溫馨提示×

Debian系統Docker容器如何管理

小樊
48
2025-10-12 14:36:27
欄目: 智能運維

Debian系統Docker容器管理指南

1. 安裝Docker引擎

在Debian系統上管理Docker容器前,需先安裝Docker。以下是標準安裝流程:

  • 更新系統包sudo apt update && sudo apt upgrade -y
  • 安裝必要依賴sudo apt install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common
  • 添加Docker官方GPG密鑰curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  • 設置Docker穩定版倉庫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
  • 安裝Docker組件sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io
  • 啟動并啟用Docker服務sudo systemctl start docker && sudo systemctl enable docker
  • 驗證安裝sudo docker run hello-world(若輸出“Hello from Docker!”則表示成功)。

2. 容器基本生命周期管理

  • 查看容器

    • docker ps:列出所有運行中的容器;
    • docker ps -a:列出所有容器(包括已停止的);
    • docker ps -q:僅顯示容器ID(適用于腳本批量操作)。
  • 啟動/停止容器

    • 啟動容器(后臺模式):docker run -d --name <容器名> <鏡像名>(如docker run -d --name nginx_1 nginx);
    • 停止容器:docker stop <容器名/ID>(發送SIGTERM信號,等待容器優雅停止);
    • 強制停止:docker stop -f <容器名/ID>(發送SIGKILL信號,立即停止);
    • 啟動已停止的容器:docker start <容器名/ID>。
  • 刪除容器

    • 刪除已停止的容器:docker rm <容器名/ID>;
    • 強制刪除運行中的容器:docker rm -f <容器名/ID>;
    • 刪除所有已停止的容器:docker container prune(需確認)。

3. 容器日常運維操作

  • 查看容器日志docker logs <容器名/ID>(實時查看日志可加-f參數);
  • 進入運行中的容器docker exec -it <容器名/ID> /bin/bash(交互式終端,-it分配偽終端);
  • 查看容器詳情docker inspect <容器名/ID>(獲取容器配置、網絡、掛載等詳細信息);
  • 查看容器資源使用docker stats(實時顯示CPU、內存、網絡等使用率);
  • 復制文件進出容器docker cp <主機路徑> <容器名/ID>:<容器路徑>(主機到容器),docker cp <容器名/ID>:<容器路徑> <主機路徑>(容器到主機)。

4. 高級管理功能

  • 數據卷管理(持久化數據):

    • 創建卷:docker volume create <卷名>;
    • 查看卷:docker volume ls;
    • 掛載卷到容器:docker run -d --name <容器名> -v <卷名>:<容器內路徑> <鏡像名>(如docker run -d --name mysql_1 -v mysql_data:/var/lib/mysql mysql);
    • 刪除卷:docker volume rm <卷名>。
  • 網絡管理(容器通信):

    • 查看網絡:docker network ls;
    • 創建自定義網絡:docker network create <網絡名>(如docker network create my_net);
    • 連接容器到網絡:docker network connect <網絡名> <容器名/ID>;
    • 斷開容器網絡:docker network disconnect <網絡名> <容器名/ID>。
  • 鏡像管理(容器基礎):

    • 拉取鏡像:docker pull <鏡像名>:<標簽>(如docker pull ubuntu:22.04);
    • 查看本地鏡像:docker images;
    • 刪除鏡像:docker rmi <鏡像名/ID>(需先刪除依賴該鏡像的容器);
    • 提交容器為新鏡像:docker commit <容器名/ID> <新鏡像名>:<標簽>(如docker commit my_container my_ubuntu:v1)。

5. 安全與管理優化

  • 非root用戶運行:將當前用戶加入docker組(避免每次用sudo):
    sudo groupadd docker && sudo usermod -aG docker $USER && newgrp docker(需重新登錄生效)。

  • 資源限制(防止容器占滿資源):

    • 限制CPU使用:docker run -d --name <容器名> --cpus="1" <鏡像名>(限制為1核);
    • 限制內存使用:docker run -d --name <容器名> --memory="512m" <鏡像名>(限制為512MB)。
  • 安全掃描:定期檢查鏡像漏洞:docker scan <鏡像名>(需安裝Docker Scan插件)。

6. 清理無用資源

  • 清理所有未使用的容器、網絡、鏡像(懸空)和卷:docker system prune -a -f-a清理未使用的鏡像,-f強制刪除,無需確認)。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女