代码随想录学习——项目学习——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

相关推荐
Darkershadow21 小时前
蓝牙学习之unprovision beacon
python·学习·ble
报错小能手1 天前
线程池学习(六)实现工作窃取线程池(WorkStealingThreadPool)
开发语言·学习
星火开发设计1 天前
二叉树详解及C++实现
java·数据结构·c++·学习·二叉树·知识·期末考试
xiaoxiaoxiaolll1 天前
《Light: Science & Applications》超表面偏振态与偏振度完全独立控制新范式
学习
sww_10261 天前
JVM基础学习
jvm·学习·测试工具
num_killer1 天前
小白的Jenkins学习
运维·python·学习·jenkins
Every exam must be1 天前
12.2 vue学习02
学习
sunfove1 天前
照度 (E) 与亮度 (L) 的关系
学习
HL_风神1 天前
设计原则之单一职责原则
c++·学习·设计模式·单一职责原则