在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
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 install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker && sudo systemctl enable docker
sudo docker run hello-world
(若輸出“Hello from Docker!”則表示成功)。查看容器:
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
(需確認)。docker logs <容器名/ID>
(實時查看日志可加-f
參數);docker exec -it <容器名/ID> /bin/bash
(交互式終端,-it
分配偽終端);docker inspect <容器名/ID>
(獲取容器配置、網絡、掛載等詳細信息);docker stats
(實時顯示CPU、內存、網絡等使用率);docker cp <主機路徑> <容器名/ID>:<容器路徑>
(主機到容器),docker cp <容器名/ID>:<容器路徑> <主機路徑>
(容器到主機)。數據卷管理(持久化數據):
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
)。非root用戶運行:將當前用戶加入docker
組(避免每次用sudo
):
sudo groupadd docker && sudo usermod -aG docker $USER && newgrp docker
(需重新登錄生效)。
資源限制(防止容器占滿資源):
docker run -d --name <容器名> --cpus="1" <鏡像名>
(限制為1核);docker run -d --name <容器名> --memory="512m" <鏡像名>
(限制為512MB)。安全掃描:定期檢查鏡像漏洞:docker scan <鏡像名>
(需安裝Docker Scan插件)。
docker system prune -a -f
(-a
清理未使用的鏡像,-f
強制刪除,無需確認)。