文章目录
- 1. 安装 Docker
- 2. 配置 Docker 镜像加速器
- 2.1 配置 Docker 镜像源
- 2.2 重启 Docker 服务
- 3. Docker 常用命令
- 3.1 Docker 常用命令速查表
- 3.1.1 容器管理
- 3.1.2 镜像管理
- 3.1.3 网络管理
- 3.1.4 数据卷管理
- 3.1.5 容器资源管理
- 3.1.6 Docker Compose(容器编排)
- 3.1.7 清理与维护
- 3.2 常用组合命令
- 3.3 常见问题
- 3.3.1 如何修改容器配置?
- 3.3.2 如何查看容器占用的端口?
- 3.3.3 如何查看 Docker 版本?
1. 安装 Docker
官方安装文档
以下以 Ubuntu24.04
为例:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullsudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker run hello-world
2. 配置 Docker 镜像加速器
2.1 配置 Docker 镜像源
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://docker.m.daocloud.io","https://mirror.baidubce.com","http://hub-mirror.c.163.com"]
}
EOF
2.2 重启 Docker 服务
sudo systemctl daemon-reload
sudo systemctl restart docker
3. Docker 常用命令
3.1 Docker 常用命令速查表
3.1.1 容器管理
命令 | 说明 |
---|
docker run -it --name my_container image:tag | 创建并运行容器(交互式) |
docker run -d --name my_container image:tag | 后台运行容器 |
docker start/stop/restart my_container | 启动/停止/重启容器 |
docker exec -it my_container /bin/bash | 进入运行中的容器 |
docker rm my_container | 删除容器 |
docker rm -f my_container | 强制删除运行中的容器 |
docker ps | 查看运行中的容器 |
docker ps -a | 查看所有容器(包括已停止的) |
docker logs my_container | 查看容器日志 |
docker logs -f my_container | 实时查看日志(类似 tail -f ) |
3.1.2 镜像管理
命令 | 说明 |
---|
docker pull image:tag | 拉取镜像 |
docker images | 查看本地镜像 |
docker rmi image:tag | 删除镜像 |
docker build -t my_image:tag . | 构建镜像(基于当前目录的 Dockerfile ) |
docker save -o my_image.tar image:tag | 导出镜像为 .tar 文件 |
docker load -i my_image.tar | 从 .tar 文件导入镜像 |
3.1.3 网络管理
命令 | 说明 |
---|
docker network ls | 查看所有网络 |
docker network create my_network | 创建自定义网络 |
docker network inspect my_network | 查看网络详情 |
docker run --network=my_network ... | 指定容器使用的网络 |
3.1.4 数据卷管理
命令 | 说明 |
---|
docker volume ls | 查看所有数据卷 |
docker volume create my_volume | 创建数据卷 |
docker run -v my_volume:/path/in/container ... | 挂载数据卷到容器 |
docker run -v /host/path:/container/path ... | 挂载主机目录到容器 |
3.1.5 容器资源管理
命令 | 说明 |
---|
docker stats | 查看容器资源占用(CPU/内存/网络) |
docker top my_container | 查看容器内的进程 |
docker update --memory 512M my_container | 限制容器内存 |
3.1.6 Docker Compose(容器编排)
命令 | 说明 |
---|
docker-compose up -d | 启动 docker-compose.yml 定义的服务 |
docker-compose down | 停止并删除所有容器 |
docker-compose logs -f | 查看所有服务的日志 |
docker-compose ps | 查看运行中的服务 |
3.1.7 清理与维护
命令 | 说明 |
---|
docker system df | 查看 Docker 磁盘使用情况 |
docker system prune | 清理未使用的容器/镜像/网络 |
docker system prune -a | 彻底清理(包括未使用的镜像) |
3.2 常用组合命令
docker container prune
docker image prune -a
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' my_container
docker stop $(docker ps -aq)
docker rm $(docker ps -aq)
3.3 常见问题
3.3.1 如何修改容器配置?
docker update --restart=always my_container
docker update --publish-add 8080:80 my_container
3.3.2 如何查看容器占用的端口?
docker port my_container
3.3.3 如何查看 Docker 版本?
docker --version
docker info