准备工作

安装Docker前需要确认电脑已经安装了WSL

下载并安装

官网链接:docker官网

安装后重启电脑,然后在Power Shell里输入以下命令来验证Docker是否成功安装,如果成功安装会显示Docker的版本

1
docker --version

接下来,注册一个Docker Hub账号并登录

然后可以运行一个简单的Docker容器来验证是否成功安装

1
docker run hello-world

如果从服务器成功拉取了hello-world 镜像并运行了容器,会显示Hello from Docker!,说明Docker 安装和运行正常

配置镜像加速(可选)

国内访问Docker Hub的速度可能较慢,可以选择配置一个国内的镜像

Settings→Docker Engine

image-20250322123156274

配置国内源后的代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"registry-mirrors":[
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"
],

"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false
}

目前网上的教程都是给的这几个源,但是我实测是连不上的,还是需要用魔法连到docker官方的源去拉取镜像

Docker常用命令

以下是一些常用的 Docker 命令,涵盖了镜像管理、容器管理、网络管理、数据卷管理等方面:


镜像管理

  1. 拉取镜像

    1
    docker pull <image-name>:<tag>

    示例:docker pull ubuntu:latest

  2. 列出本地镜像

    1
    docker images
  3. 删除本地镜像

    1
    docker rmi <image-id>

    示例:docker rmi ubuntu:latest

  4. 构建镜像

    1
    docker build -t <image-name>:<tag> <path-to-dockerfile>

    示例:docker build -t my-app:1.0 .

  5. 推送镜像到仓库

    1
    docker push <image-name>:<tag>

    示例:docker push my-app:1.0

  6. 查看镜像历史

    1
    docker history <image-name>

容器管理

  1. 运行容器

    1
    docker run <options> <image-name>

    示例:docker run -it ubuntu bash

  2. 列出正在运行的容器

    1
    docker ps
  3. 列出所有容器(包括已停止的)

    1
    docker ps -a
  4. 启动已停止的容器

    1
    docker start <container-id>
  5. 停止容器

    1
    docker stop <container-id>
  6. 删除容器

    1
    docker rm <container-id>
  7. 进入运行中的容器

    1
    docker exec -it <container-id> <command>

    示例:docker exec -it my-container bash

  8. 查看容器日志

    1
    docker logs <container-id>
  9. 查看容器详细信息

    1
    docker inspect <container-id>
  10. 复制文件到容器

    1
    docker cp <local-path> <container-id>:<container-path>

    示例:docker cp my-file.txt my-container:/app/

  11. 从容器复制文件到主机

    1
    docker cp <container-id>:<container-path> <local-path>

    示例:docker cp my-container:/app/my-file.txt ./


网络管理

  1. 列出网络

    1
    docker network ls
  2. 创建网络

    1
    docker network create <network-name>
  3. 连接容器到网络

    1
    docker network connect <network-name> <container-id>
  4. 断开容器与网络的连接

    1
    docker network disconnect <network-name> <container-id>
  5. 删除网络

    1
    docker network rm <network-name>

数据卷管理

  1. 列出数据卷

    1
    docker volume ls
  2. 创建数据卷

    1
    docker volume create <volume-name>
  3. 删除数据卷

    1
    docker volume rm <volume-name>
  4. 挂载数据卷到容器

    1
    docker run -v <volume-name>:<container-path> <image-name>

    示例:docker run -v my-volume:/data ubuntu

  5. 查看数据卷详细信息

    1
    docker volume inspect <volume-name>

Docker Compose

  1. 启动服务

    1
    docker-compose up
  2. 后台启动服务

    1
    docker-compose up -d
  3. 停止服务

    1
    docker-compose down
  4. 查看服务状态

    1
    docker-compose ps
  5. 查看服务日志

    1
    docker-compose logs

其他常用命令

  1. 查看 Docker 版本

    1
    docker --version
  2. 查看 Docker 系统信息

    1
    docker info
  3. 清理未使用的镜像、容器、网络和数据卷

    1
    docker system prune
  4. 强制清理所有未使用的资源

    1
    docker system prune -a
  5. 登录 Docker Hub

    1
    docker login
  6. 登出 Docker Hub

    1
    docker logout

常用选项

• **-d**:后台运行容器(detached mode)。
• **-it**:以交互模式运行容器(interactive + TTY)。
• **-p**:映射端口(<host-port>:<container-port>)。
• **-v**:挂载数据卷(<host-path>:<container-path>)。
• **--name**:为容器指定名称。
• **--rm**:容器退出后自动删除。


示例

  1. 运行一个 Nginx 容器并映射端口:

    1
    docker run -d -p 8080:80 --name my-nginx nginx
  2. 使用 Docker Compose 启动一个多容器应用:

    1
    docker-compose up -d
  3. 清理未使用的资源:

    1
    docker system prune

这些命令涵盖了 Docker 的常见操作场景。根据你的需求,可以灵活组合使用这些命令来管理 Docker 容器和镜像。