解决 WSL 中无法访问 registry-1.docker.io/v2/,无法用 docker 拉取 image

文章目录

无法拉取docker镜像

bash 复制代码
docker run hello-world
Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceeded

Run 'docker run --help' for more information

解决:

在 WSL 的 ~/.bashrc 加入如下内容:

bash 复制代码
export hostip=$(cat /etc/resolv.conf |grep -oP '(?<=nameserver\ ).*')
export https_proxy="http://${hostip}:7890"
export http_proxy="http://${hostip}:7890"

刷新:source ~/.bashrc

编辑 /etc/resolv.conf(该文件在WSL重启后会恢复默认配置)使用如下:

bash 复制代码
nameserver 8.8.8.8

保存后设置文件为不可变(防止被修改):

bash 复制代码
sudo chattr +i /etc/resolv.conf

同时宿主机器 ,使用 clash 开启虚拟网卡模式


补充

迁移 WSL 位置

将 WSL 从 C 盘迁移到 D 盘。

当前版本

bash 复制代码
>wsl --list --verbose
  NAME      STATE           VERSION
* Ubuntu    Running         2

关闭 wsl、注销、导出为归档文件

bash 复制代码
wsl --shutdown
wsl --export Ubuntu "D:\software\WSL\ubuntu_backup.tar"
wsl --unregister Ubuntu
# 注销原先在C盘的 Ubuntu WSL 实例,删除原始文件并释放 C 盘空间。

导入并启动

bash 复制代码
wsl --import Ubuntu "D:\software\WSL\Ubuntu" "D:\software\WSL\ubuntu_backup.tar" --version 2

wsl --list --verbose
wsl

Install Docker

bash 复制代码
sudo apt update && sudo apt upgrade -y
sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
sudo usermod -aG docker $USER
sudo service docker start

docker --version
docker run hello-world
bash 复制代码
sudo apt install docker-compose
docker-compose --version
相关推荐
贝锐6 小时前
Docker部署Teemii本地漫画库,并通过花生壳内网穿透实现远程访问
docker
i***22079 小时前
springboot整合libreoffice(两种方式,使用本地和远程的libreoffice);docker中同时部署应用和libreoffice
spring boot·后端·docker
羑悻的小杀马特12 小时前
轻量跨云·掌控无界:Portainer CE + cpolar 让远程容器运维像点外卖一样简单——免复杂配置,安全直达对应集群
运维·网络·安全·docker·cpolar
EAIReport17 小时前
企业级报表自动化:基于Docker的部署实践
运维·docker·自动化
cui_win1 天前
Docker Compose 部署一个完整的Prometheus监控告警系统
docker·容器·prometheus
ALex_zry1 天前
Docker Compose运维技术实战分享:从安装到架构解析
运维·docker·架构
roman_日积跬步-终至千里1 天前
【Docker】Docker Stop 后到底发生了什么?——从信号机制到优雅停机
运维·docker·容器
z***6261 天前
Docker:基于自制openjdk8镜像 or 官方openjdk8镜像,制作tomcat镜像
docker·容器·tomcat
❀͜͡傀儡师1 天前
Docker部署视频下载器
docker·容器·音视频
热爱学习的小怪兽1 天前
docker的一些常用指令
运维·docker·容器