安装和配置Docker教程(装在其他盘)

目录

    • [1. 下载](#1. 下载)
    • [2. 安装](#2. 安装)
    • [3. 错误处理](#3. 错误处理)
      • [3.1 关于docker version](#3.1 关于docker version)
      • [3.2 关于命令`docker run hello-world`](#3.2 关于命令docker run hello-world)
      • [3.2 关于Docker Desktop](#3.2 关于Docker Desktop)
      • [3.3 其他](#3.3 其他)
    • [4. 配置](#4. 配置)

1. 下载

官网下载地址

下载AMD版

2. 安装

由于默认安装在C盘,而我想迁移到D盘,所以就不直接打开安装包,而是用命令行

  1. 打开终端

    以管理员身份打开命令提示符

  2. 进入安装包所在文件夹

    比如我的Docker Desktop Installer.exe所在地址为D:\Downloads,那么先切换到D盘

    再键入命令cd+安装包所在地址

    bash 复制代码
    cd D:\Downloads

    就进入了安装包所在文件夹

  3. 设置安装目录

    输入命令

    bash 复制代码
    start /w "" "Docker Desktop Installer.exe" install -accept-license --installation-dir="D:\Downloads\Docker" --wsl-default-data-root="D:\Downloads\Docker\data" --windows-containers-default-data-root="D:\\Downloads\\Docker"

    命令解释(每段之间有一个空格):

    • start /w "" "Docker Desktop Installer.exe"start /w表示等待安装完成后再返回命令行,并指定了要安装的程序
    • install:执行安装操作
    • -accept-license:自动接受许可协议
    • --installation-dir:指定主安装目录
    • --wsl-default-data-root:设置WSL2数据存储位置
    • --windows-containers-default-data-root:设置Windows容器数据存储位置

    安装过程中有两句提示:

    bash 复制代码
    Failed to track the installer started event, caused by: 发送请求时出错。
    Failed to track the installer finished event, caused by: 发送请求时出错。

    应该没什么大碍

  4. 检查安装

    输入

    bash 复制代码
    docker run hello-world

    显示

    即为正常

3. 错误处理

3.1 关于docker version

正常应很快就显示Client和Server部分

  1. 错误1

    显示

    bash 复制代码
    'docker' 不是内部或外部命令,也不是可运行的程序或批处理文件。

    解决

    法一:重启终端或重启电脑

    法二:检查系统环境变量是否有D:\Downloads\Docker\resources\bin,没有就加上这个环境变量

  2. 错误2

    显示

    bash 复制代码
    'error during connect: Get "http://%2F%2F.%2Fpipe%2FdockerDesktopLinuxEngine/v1.51/version": open //./pipe/dockerDesktopLinuxEngine: The system cannot find the file specified.'

    解决

    这是因为没启动Docker Desktop,启动一下就好了,最好要进入主界面

  3. 错误3

    命令运行很慢,没反应,按Ctrl+C终止只有Client部分

    解决

    可能是网络问题,开关梯子试试。或者是因为Docker Desktop显示Docker Engine stopped

  4. 错误4

    显示

    bash 复制代码
    error during connect: Get "http://%2F%2F.%2Fpipe%2FdockerDesktopLinuxEngine/v1.51/version": EOF

    解决

    发现Docker Desktop显示Docker Engine stopped,见"3.关于Docker Desktop"的"错误2"

3.2 关于命令docker run hello-world

  1. 错误1

    显示

    bash 复制代码
    'docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": proxyconnect tcp: dial tcp 127.0.0.1:7890: connect: connection refused'
  2. 错误2

    显示

    bash 复制代码
    'Unable to find image 'hello-world:latest' locally'

    解决

    启动Docker Desktop,多尝试几次,开关梯子

  3. 错误3

    运行很慢,没反应

    解决

    发现Docker Desktop显示Docker Engine stopped,见"3.关于Docker Desktop"的"错误2"

3.2 关于Docker Desktop

  1. 错误1

    启动时显示

    解决

    不知道怎么解决的,尝试过以下方法:点击Recover WSL distro,没效果;重启终端,重启电脑;开关梯子;以管理员身份运行。

  2. 错误2


    在这之前其实成功过,后面又不行了,出现这个问题

    解决

    进入D:\Downloads\Docker\data\disk,右键docker_data.vhdx,属性-安全-编辑


    对每一个组或用户名赋予所有权限

3.3 其他

需要启用一些功能

点击控制面板-程序-程序和功能-启用或关闭Windows功能

勾选以下功能

(勾选Hyper-V会让梯子用不了,还未解决这个问题)

4. 配置

  1. 配置镜像加速器

    打开Docker Desktop,Settings - Dockers Engine,将内容替换为

    json 复制代码
    {
        "builder": {
            "gc": {
                "defaultKeepStorage": "20GB",
                "enabled": true
            }
        },
        "experimental": false,
        "registry-mirrors": [
            "https://registry.docker-cn.com",
            "http://hub-mirror.c.163.com",
            "https://dockerhub.azk8s.cn",
            "https://mirror.ccs.tencentyun.com",
            "https://registry.cn-hangzhou.aliyuncs.com",
            "https://docker.mirrors.ustc.edu.cn",
            "https://docker.m.daocloud.io",
            "https://noohub.ru",
            "https://huecker.io",
            "https://dockerhub.timeweb.cloud"
        ]
    }

源失效了需要去容器镜像服务这个链接替换

  1. 配置代理(可选)

    搜索"代理服务器设置"

    点击下面的编辑

    记住代理IP地址和端口,回到Docker Desktop,点击Settings -- Resources -Proxies

    将Web Server(HTTP)和Secure Web Server(HTTPS)均填入
    http://代理IP地址:端口

    将代理IP地址和端口替换为刚才在网络设置看到的内容,保存


相关推荐
和裕10 小时前
蜂窝板 vs 七层瓦楞重型纸箱:大件工业设备运输性能与成本全对比
大数据·运维·网络·人工智能·算法
Dawn-bit10 小时前
Linux 运维基础扩展:跳板机、堡垒机与物理服务器全流程
linux·运维·服务器·云计算·运维开发
新时代牛马10 小时前
Linux 定时任务:crontab、anacron 与systemd timer
linux·运维·服务器
cpolar技术支持11 小时前
Docker 容器启动失败怎么查?端口、日志、权限与网络排障完整教程
linux·docker·容器·cpolar·网络排障
网硕互联的小客服11 小时前
怎样在CMD里用chkntfs /x C: 命令来取消磁盘自检?——原理与实践全解
运维·服务器·网络
布莱克60511 小时前
Linux 常用命令详解:从入门到实战
linux·运维·服务器
学习路上_write13 小时前
Linux黑马命令学习
linux·运维·服务器
一技安身13 小时前
【大模型】Win11 部署 DeepSeek+ RAGFlow0.27.2 (Ollama方案,断网可用)
docker·ai·语言模型
Android系统攻城狮13 小时前
Linux Gstreamer深度解析之gst_audio_channel_reorder_map调用流程与实战(十八)
linux·运维·服务器·音视频进阶·gstreamer音视频进阶
新时代牛马14 小时前
docker run 起不来?从dockerd、containerd 到runc 一条线讲透
运维·docker·容器