docker笔记

发布于:2025-05-31 ⋅ 阅读:(17) ⋅ 点赞:(0)

Docker 安装

Ubuntu/Debian 系统安装 Docker
更新软件包索引并安装依赖工具:

sudo apt-get update
sudo apt-get install ca-certificates curl gnupg

添加 Docker 官方 GPG 密钥:

sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

设置 Docker 仓库:

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

安装 Docker 引擎:

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

验证安装:

sudo docker run hello-world

CentOS 系统安装 Docker
安装依赖:

sudo yum install -y yum-utils

添加 Docker 仓库:

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

安装 Docker 引擎:

sudo yum install docker-ce docker-ce-cli containerd.io

启动 Docker 服务:

sudo systemctl start docker
sudo systemctl enable docker

验证安装:

sudo docker run hello-world

Docker 加速器配置

修改或创建 Docker 配置文件 /etc/docker/daemon.json

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://registry.docker-cn.com",
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}
EOF

重新加载配置并重启 Docker:

sudo systemctl daemon-reload
sudo systemctl restart docker

验证加速器是否生效:

docker info | grep "Registry Mirrors"

Docker 常用命令

镜像管理
拉取镜像:

docker pull nginx:latest

列出本地镜像:

docker images

删除镜像:

docker rmi nginx:latest

容器管理
运行容器:

docker run -d --name mynginx -p 80:80 nginx

列出运行中的容器:

docker ps

列出所有容器(包括停止的):

docker ps -a

停止容器:

docker stop mynginx

启动已停止的容器:

docker start mynginx

进入容器:

docker exec -it mynginx /bin/bash

删除容器:

docker rm mynginx

日志与状态
查看容器日志:

docker logs mynginx

查看容器资源使用:

docker stats mynginx

数据卷管理
创建数据卷:

docker volume create myvolume

列出数据卷:

docker volume ls

删除数据卷:

docker volume rm myvolume

网络管理
创建网络:

docker network create mynetwork

列出网络:

docker network ls

清理资源
清理未使用的镜像、容器和网络:

docker system prune

强制清理所有未使用的资源:

docker system prune -a