代码随想录学习——项目学习——HTTP服务框架——环境配置问题

从零开始配置环境--采用docker配置环境

在使用docker配置环境中会出现一系列问题:

最不好解决的是在拉取远程镜像下载时出现的问题:

复制代码
# 将我提供的远程镜像拉取到本地
docker pull huanheart/httpserver:v1

如果在这个过程中出现 Error response from daemon: Get "https://registry-1.docker.io/v2/'":context deadline exceeded 等类似问题,

那么可能是因为没有设置代理导致的(因为目前国内的docker不可以使用了,必须挂梯子下载或者采用国内的镜像源)

可以设置国内镜像源代理或者说用梯子开启局域网服务,并在虚拟机上进行绑定。

1.设置国内镜像源代理

这个比较简单,配置可以用的Docker镜像加速器就可以了:

打开配置文件:

cpp 复制代码
sudo nano /etc/docker/daemon.json

配置镜像加速器:

复制代码
{
  "registry-mirrors":[
    "https://docker.m.daocloud.io",
    "https://docker.1ms.run",
    "https://docker.m.ixdev.cn"
  ] 
}

这个是我这里用的镜像加速器,仅供参考。不能用去网上找可以用的。

2.用梯子开开启局域网服务,并配置虚拟机接口

(1)推荐的方法:修改 daemon.json 配置文件

首先,找到你的 daemon.json 配置文件,比较坑的是,不同的 docker 安装方式这个文件的位置不同。

然后,添加以下内容,把你自己本地的代理地址写进去:

复制代码
{
  "proxies" : {
    "http-proxy" : "http://127.0.0.1:7890",
    "no-proxy" : "localhost,127.0.0.0/8",
    "https-proxy" : "http://127.0.0.1:7890"
  }
}

然后重启一下 docker 服务,使其生效。若要检查生效情况,可以执行:

复制代码
$ docker info
...
HTTP Proxy: http://127.0.0.1:7890
HTTPS Proxy: http://127.0.0.1:7890
No Proxy: localhost,127.0.0.1
...

如果出现以上几行的话,说明代理配置成功,这时候可以尝试 docker pull 看看是否正常。

(2)适用于 Linux 部署,修改 systemd 自启动配置

一般情况下,用上面的方法就可以了。不过官方文档里,另外还提出了一种方案,适合 linux 环境下直接在 systemd 中配置代理。简单介绍一下。

新增 systemd 配置文件/etc/systemd/sysytem/docker.service.d/http_proxy.conf

复制代码
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf

加入以下内容:地址和端口去网上搜怎么整

复制代码
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=https://127.0.0.1:7890"
Environment="NO_PROXY=localhost,127.0.0.1"

然后:

  1. 重新加载systemd配置:

    sudo systemctl daemon-reload

  2. 重启docker服务:

    sudo systemctl restart docker

  3. 检查代理是否生效:

    sudo systemctl show docker --property Environment

更详细的介绍,请见Daemon proxy configuration | Docker Docs

相关推荐
菜鸡儿齐7 分钟前
MapReduce-源码学习
大数据·学习·mapreduce
heanyu15 分钟前
STM32学习 1 ----串口通讯--阻塞式收发+支持printf
stm32·嵌入式硬件·学习
東雪木26 分钟前
软件设计师考试复习——CPU 结构、流水线、存储体系(主存 / 辅存)
学习·软件设计师复习
2501_9181269139 分钟前
学习所有6502写游戏动作的语句
汇编·嵌入式硬件·学习·游戏·个人开发
夏日听雨眠43 分钟前
文件学习9
数据结构·学习·算法
野犬寒鸦44 分钟前
从零起步学习JVM|| 第二章:JVM基本组成及JVM内存区域详解
服务器·开发语言·后端·学习·面试·职场和发展
罗罗攀1 小时前
PyTorch学习笔记|张量的线性代数运算
人工智能·pytorch·笔记·学习·线性代数
苦涩花开54861 小时前
Kubernetes学习,记一些笔记
笔记·学习·kubernetes
liliangcsdn1 小时前
LLM长文本场景-多文档分布式分析示例
人工智能·学习
丝斯20111 小时前
AI学习笔记整理(74)——Python学习3
笔记·python·学习