docker入门(保姆级)
📋 容器管理
命令 | 说明 |
---|---|
docker ps | 查看运行中的容器 |
docker ps -a | 查看所有容器(包括停止的) |
docker run -it <image> | 交互式运行容器 |
docker run -d <image> | 后台运行容器 |
docker run -p 8080:80 <image> | 端口映射 |
docker run -v /host/path:/container/path <image> | 挂载数据卷 |
docker stop <container> | 停止容器 |
docker start <container> | 启动已停止的容器 |
docker restart <container> | 重启容器 |
docker rm <container> | 删除容器 |
docker rm -f <container> | 强制删除运行中的容器 |
docker exec -it <container> bash | 进入容器 |
docker logs <container> | 查看容器日志 |
docker logs -f <container> | 实时查看日志 |
🖼️ 镜像管理
命令 | 说明 |
---|---|
docker images | 查看本地镜像 |
docker pull <image> | 拉取镜像 |
docker push <image> | 推送镜像 |
docker build -t <name> . | 构建镜像 |
docker rmi <image> | 删除镜像 |
docker tag <image> <new_name> | 给镜像打标签 |
docker save -o <file.tar> <image> | 导出镜像 |
docker load -i <file.tar> | 导入镜像 |
🔧 常用操作示例
运行 Nginx 容器
bash
docker run -d --name my-nginx -p 80:80 nginx
运行 MySQL 容器
bash
docker run -d --name mysql-db \-e MYSQL_ROOT_PASSWORD=123456 \-v mysql_data:/var/lib/mysql \mysql:8.0
构建 Dockerfile
bash
docker build -t my-app:1.0 .
进入容器并执行命令
bash
docker exec -it my-nginx bash docker exec my-nginx ls /etc/nginx
🛠️ 系统管理
命令 | 说明 |
---|---|
docker info | 查看 Docker 系统信息 |
docker version | 查看 Docker 版本 |
docker system df | 查看磁盘使用情况 |
docker system prune | 清理无用资源 |
docker stats | 查看容器资源使用情况 |
docker top <container> | 查看容器进程 |
📦 网络管理
命令 | 说明 |
---|---|
docker network ls | 查看网络列表 |
docker network create <name> | 创建网络 |
docker network connect <network> <container> | 连接容器到网络 |
docker network disconnect <network> <container> | 从网络断开容器 |
🗂️ 数据卷管理
命令 | 说明 |
---|---|
docker volume ls | 查看数据卷列表 |
docker volume create <name> | 创建数据卷 |
docker volume rm <name> | 删除数据卷 |
docker volume prune | 清理无用数据卷 |
🚀 实用技巧
1. 批量停止所有容器
bash
docker stop $(docker ps -aq)
2. 批量删除所有容器
bash
docker rm $(docker ps -aq)
3. 批量删除所有镜像
bash
docker rmi $(docker images -q)
4. 查看容器资源使用
bash
docker stats --all --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"
5. 从容器复制文件到主机
bash
docker cp <container>:/path/in/container /path/on/host
6. 从主机复制文件到容器
bash
docker cp /path/on/host <container>:/path/in/container