Docker、Containerd添加代理

Docker、Containerd添加代理

博文的由来

国内网络环境下使用过docker的小伙伴,多数都会碰到一个一问题,由于连不上国外的dockerhub,导致无法pull需要的镜像,解决方案基本就四种

  1. 将镜像仓库地址切换到国内的镜像仓库
  2. 使用别人打好的镜像包,使用 load命令导入到本地镜像仓库
  3. 使用代理来连接国外的docker镜像库
  4. 下载源码,编译成镜像,推送到本地的镜像仓库,然后从本地镜像仓库拉取所需镜像
  • 第一种方式,像redis、mysql、postgreSQL、RabbitMQ等等,这些热门镜像国内的镜像仓库都是有我们需要的镜像版本,然而,当我们使用一些新的镜像版本时,国内镜像仓库多数情况下是没有的。

  • 第二种方式,需要从网络资源、朋友、同事那儿获取到,打包好的镜像,工作中及其不方便,严重影响工作效率。

  • 第三种方式,使用代理来连接国外的镜像仓库,这种方式在工作中会经常使用,因为大多数技术的官方文档中提到的版本,在国外的镜像仓库中都有对应的版本,使用起来快捷省力,节省时间,工作效率高。

  • 第四种方式,自己下载源码,并制作镜像,推送到本地镜像仓库。当时间充裕时,这种方式也是个不错的选择,但是但是门槛相对较高。

下面主要介绍一下如何使用代理来连接国外的镜像仓库

docker环境下使用代理

docker环境下,有两种方式可以给docker配置代理服务器

  1. 新增或修改/etc/docker/daemon-reload.json配置文件
mkdir -p /etc/docker
touch /etc/docker/daemon.json
tee /etc/docker/daemon.json << "EOF"
{"proxies": {"http-proxy": "http://IP:PORT","https-proxy": "http://IP:PORT","no-proxy": "localhost"}
}
EOF
systemctl daemon-reload
systemctl restart docker
docker info | grep 'Proxy'

执行上面的命令后,如果出现类似如下信息,表明配置成功

 HTTP Proxy: http://ip:portHTTPS Proxy: http://ip:portNo Proxy: localhost

注意:

  • 需要使用你自己的代理服务器IP和PORT替换掉上面配置中的IP和PORT变量
  • 如果已经存在/etc/docker/daemon-reload.json文件,为了避免覆盖本地docker配置,直接最外层的“{}”中的最后一项配置后添加“,” ,然后按回车键,将下面的代理配置插入即可。
"proxies": {"http-proxy": "http://IP:PORT","https-proxy": "http://IP:PORT","no-proxy": "localhost"}

最后执行如下命令

systemctl daemon-reload
systemctl restart docker
docker info | grep 'Proxy'

如果出现类似如下信息,表明配置成功

HTTP Proxy: http://ip:port
HTTPS Proxy: http://ip:port
No Proxy: localhost
  1. 新增 /etc/systemd/system/docker.service.d/http-proxy.conf配置文件
mkdir -p /etc/systemd/system/docker.service.d
touch /etc/systemd/system/docker.service.d/http-proxy.conf
tee /etc/systemd/system/docker.service.d/http-proxy.conf << EOF
[Service]
Environment="HTTP_PROXY=http://IP:Port"
Environment="HTTPS_PROXY=http://IP:Port"
Environment="NO_PROXY=localhost,127.0.0.1,containerd"
EOF
systemctl daemon-reload
systemctl restart docker
docker info | grep 'Proxy'

如果出现类似如下信息,表明配置成功

 HTTP Proxy: http://ip:portHTTPS Proxy: http://ip:portNo Proxy: localhost

kubernetes使用containerd作为运行时环境时,使用代理

新增 /etc/systemd/system/containerd.service.d/http-proxy.conf配置文件

mkdir -p /etc/systemd/system/containerd.service.d
touch /etc/systemd/system/containerd.service.d/http-proxy.conf
tee /etc/systemd/system/containerd.service.d/http-proxy.conf << EOF
[Service]
Environment="HTTP_PROXY=http://IP:Port"
Environment="HTTPS_PROXY=http://IP:Port"
Environment="NO_PROXY=localhost,127.0.0.1,containerd"
EOF
systemctl daemon-reload
systemctl restart containerd

执行如下命令,检查containerd是否重启成功

systemctl status containerd

显示内容如下所示,表明containerd重启成功

● containerd.service - containerd container runtimeLoaded: loaded (/etc/systemd/system/containerd.service; disabled; vendor preset: disabled)Drop-In: /etc/systemd/system/containerd.service.d└─http-proxy.confActive: active (running) since Tue 2024-06-25 14:04:56 CST; 1h 41min agoDocs: https://containerd.ioMain PID: 24121 (containerd)Tasks: 103Memory: 132.8MCGroup: /system.slice/containerd.service├─ 1751 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id f4aea9371b88b7446f3d6599ea81be12223ef82ff585c5cdce0b9e1e2b516157 -address /run/containerd/containerd.sock├─ 1752 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id ea90b9ac243fdc29b627dcde5a3662d1fa1b3e77d7d17e33684d626118138a50 -address /run/containerd/containerd.sock├─ 1757 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id f85aa0ccc5d628781e82d39b24beae79598127db0ba1f040e20204bad58052ba -address /run/containerd/containerd.sock├─ 1983 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id f97c1b4cdf5dff3750cb74491fa7c2accb6a9fcf0da36da52a1133b19b22d8d8 -address /run/containerd/containerd.sock├─ 2056 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id ab1923d1799e6ce10d7d08f0f291cc5d2e9089f63d318830b529bcc2d6a7e36b -address /run/containerd/containerd.sock├─ 2084 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id 856799f3bcd0ba75f0b73ea05503ea4a3a3d62dfccc6071185dca456ffabc390 -address /run/containerd/containerd.sock├─ 2228 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id 3da0d26340af3ba6382b98bbbb0b211c5f0df42d53ab591f545acbe34339a45a -address /run/containerd/containerd.sock└─24121 /usr/bin/containerdJun 25 14:04:56 k8s-master01 containerd[24121]: time="2024-06-25T14:04:56.074960872+08:00" level=info msg="Start subscribing containerd event"
Jun 25 14:04:56 k8s-master01 containerd[24121]: time="2024-06-25T14:04:56.075010828+08:00" level=info msg=serving... address=/run/containerd/containerd.sock.ttrpc
Jun 25 14:04:56 k8s-master01 containerd[24121]: time="2024-06-25T14:04:56.075016696+08:00" level=info msg="Start recovering state"
Jun 25 14:04:56 k8s-master01 containerd[24121]: time="2024-06-25T14:04:56.075048514+08:00" level=info msg=serving... address=/run/containerd/containerd.sock
Jun 25 14:04:56 k8s-master01 containerd[24121]: time="2024-06-25T14:04:56.132745672+08:00" level=info msg="Start event monitor"
Jun 25 14:04:56 k8s-master01 systemd[1]: Started containerd container runtime.
Jun 25 14:04:56 k8s-master01 containerd[24121]: time="2024-06-25T14:04:56.132788698+08:00" level=info msg="Start snapshots syncer"
Jun 25 14:04:56 k8s-master01 containerd[24121]: time="2024-06-25T14:04:56.132800032+08:00" level=info msg="Start cni network conf syncer for default"
Jun 25 14:04:56 k8s-master01 containerd[24121]: time="2024-06-25T14:04:56.132809839+08:00" level=info msg="Start streaming server"
Jun 25 14:04:56 k8s-master01 containerd[24121]: time="2024-06-25T14:04:56.132885290+08:00" level=info msg="containerd successfully booted in 0.089720s"

最后使用如下命令拉取在国外存在而国内镜像仓库无法拉取的镜像,check代理是否配置成功

crictl pull rancher/shell:v0.1.21

提示类似如下信息,表明镜像已经拉取成功

Image is up to date for sha256:4cf698201012ec6e83e84e75d52c1fa1f7d24517c51b60827022fe6e75a3cf0d

或者查看一下本地的镜像列表

crictl images | grep rancher/shell

能够看到刚才下载的如下镜像,表明containerd的配置也是OK的

docker.io/rancher/shell                                            v0.1.21                  4cf698201012e       136MB

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/862602.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android 12.0 通知发送过程源码分析-Framework

以下NotificationManagerService简称 NMS 1. 通知的发送: NotificationManager.notify(int id, Notification notification) 开始. 源码路径: /frameworks/base/core/java/android/app/NotificationManager.java/***发布通知以显示在状态栏中。 如果通知带有* 相同的 ID 已被…

debian打包小结

背景 业务需要&#xff0c;打一个openstack组件的deb包 openstack组件有setup.py可直接支持打rpm包&#xff0c;但不支持deb包&#xff0c;所以手动打deb包 用了dh_make准备打包文件&#xff0c;然后用debuild或dpkg-buildpackages打deb包 步骤 方法有很多&#xff0c;我用…

Linux驱动开发笔记(十二)并发与竞争

文章目录 前言一、并发与竞争的引入1.1 并发1.2 竞争1.3 解决方法 二、原子操作2.1 概念2.2 使用方法 三、自旋锁3.1 概念3.2 使用方法3.3 自旋锁死锁 四、信号量4.1 概念4.2 使用方法 五、互斥锁5.1 概念5.2 使用方法 前言 Linux的子系统我们已经大致学习完了&#xff0c;笔者…

项目测试排期的正确方法是什么?

测试排期是项目排期里面的一部分&#xff0c;所以了解项目排期对整体产品的全貌会有一个宏观的认知&#xff0c;甘特图能很好的体现项目排期&#xff0c;里面包含了参与角色和每个角色对应的排期。项目参与者和项目责任人都可以清晰的看到项目当前进展和项目耗时等。 甘特图可…

c++习题03-分卡片

目录 一&#xff0c;题目 二&#xff0c;思路 三&#xff0c;代码 一&#xff0c;题目 二&#xff0c;思路 在做题的时候一定要认真审题&#xff0c;抓住关键的点和条件&#xff0c;才能够更高效的做对题目。 上面的题目有以下关键点&#xff08;关键条件&#xff0…

如何在Android中使用轻量级视图和ViewStub来减少内存占用和提高性能。

在Android中使用轻量级视图和ViewStub来减少内存占用和提高性能 一、技术难点 在Android开发中&#xff0c;使用轻量级视图&#xff08;如自定义视图&#xff09;和ViewStub来减少内存占用和提高应用性能&#xff0c;主要面临以下几个技术难点&#xff1a; 轻量级视图的设计与…

Transformer2--Multi-head self-attention

目录 一、背景二、多头自注意力机制的原理2.1 自注意力机制2.2 多头自注意力机制2.3 Positional Encoding&#xff08;位置编码&#xff09;2.4 self-attention for image 三、Self-attention v.s CNN四、Self-attention v.s RNN参考资料 一、背景 为什么是multi-head self at…

CocosCreator构建IOS的wwise教程

CocosCreator构建IOS教程 添加wwise教程: 1.添加include 2.添加SoundEngine 3.添加Profile-iphoneos下面lib下面的.a 4.导入js调用C++的文件 5.导入这些文件 6.初始化ios绝对路径和TTS语音合成对象 6.获得根目录绝对路径,加载pck需要找到绝对路径。怎么找绝对路径? #impor…

2024年危化品安全员生产单位(生产管理人员)考试精选题库

31.《危险化学品安全管理条例》所称重大危险源,是指生产、储存、使用或者搬运危险化学品,且危险化学品的数量等于或者超过&#xff08;&#xff09;的单元(包括场所和设施)。 A.标准 B.一定量 C.临界量 答案&#xff1a;C 32.《危险化学品生产企业安全生产许可证实施办法》…

C语言分支和循环(上)

C语言分支和循环&#xff08;上&#xff09; 1. if语句1.1 if1.2 else1.3 分支中包含多条语句1.4 嵌套if1.5 悬空else问题 2. 关系操作符3. 条件操作符4. 逻辑操作符&#xff1a;&&,||,&#xff01;4.1 逻辑取反运算符4.2 与运算符4.3 或运算符4.4 练习&#xff1a;闰年…

加密与安全_Java 加密体系 (JCA) 和 常用的开源密码库

文章目录 Java Cryptography Architecture (JCA)开源国密库国密算法对称加密&#xff08;DES/AES⇒SM4&#xff09;非对称加密&#xff08;RSA/ECC⇒SM2&#xff09;散列(摘要/哈希)算法&#xff08;MD5/SHA⇒SM3&#xff09; 在线生成公钥私钥对&#xff0c;RSA公私钥生成参考…

黑苹果系统(MacOS)配置清单

手里的MacBookPro已经快沦为电子垃圾了&#xff0c;平时用MacOS比较多&#xff0c;Window用的比较少&#xff0c;而苹果电脑的价格不管是MacBookPro还是MacMini丐版的便宜但是面对现在Window动不动就64g内存的情况就显得微不足道了&#xff0c;高配的价格直接把我劝退&#xff…

招聘,短信与您:招聘人员完整指南

招聘人员面临的最大挑战之一就是沟通和联系候选人。为何?我们可以从以下原因开始&#xff1a;候选人通常被太多的招聘人员包围&#xff0c;试图联系他们&#xff0c;这使得你很难吸引他们的注意。在招聘过程的不同阶段&#xff0c;根据不同的工作量&#xff0c;让申请人保持最…

【ACM_2023】3D Gaussian Splatting for Real-Time Radiance Field Rendering

【ACM_2023】3D Gaussian Splatting for Real-Time Radiance Field Rendering 一、前言Abstract1 INTRODUCTION2 RELATED WORK2.1 Traditional Scene Reconstruction and Rendering2.2 Neural Rendering and Radiance Fields2.3 Point-Based Rendering and Radiance Fields 3 O…

GPU设置

GPU降温测试 前提 同一个训练程序&#xff0c;使用8块GPU&#xff0c;GPU使用率基本全程>90%&#xff0c;GPU为1080 Ti 限制最高功率效果 不限制最高功率(默认最高功率250W)&#xff1a;最高温度85&#xff0c;大多时间在75-85之间 将最高功率限制为150W&#xff1a;最高…

mtu 1500 qdisc noop state DOWN group default qlen 1000问题的解决

问题描述 1、打开虚拟机终端&#xff0c;root身份启动ens网卡&#xff08;一般情况下还是会直接报错 ifup ens33 2、停止网卡设置disable再启动 systemctl stop NetworkManager 不报错即可 systemctl disable NetworkManagerservice network restart出现了绿色的OK啦&#…

Android10 SystemUI系列 需求定制(二)隐藏状态栏通知图标,锁屏通知,可定制包名,渠道等

一、前言 SystemUI 所包含的界面和模块比较多,这一节主要分享一下状态栏通知图标和通知栏的定制需求:隐藏状态栏通知图标,锁屏通知,可定制包名,渠道等 来熟悉一下Systemui。 二、准备工作 按照惯例先找到核心类。这里提前说一下,这个需求的修改方法更多,笔者这里也只…

SpringBoot——整合Shiro,实现安全认证和权限管理功能

目录 Shiro 项目总结 新建一个SpringBoot项目 pom.xml application.properties&#xff08;配置文件&#xff09; User&#xff08;实体类&#xff09; UserMapper&#xff08;数据访问层接口&#xff09; UserMapper.xml&#xff08;数据库映射文件&#xff09; User…

单位转换:将kb转换为 MB ,GB等形式

写法一&#xff1a; function formatSizeUnits(kb) {let units [KB, MB, GB, TB, PB,EB,ZB,YB];let unitIndex 0;while (kb > 1024 && unitIndex < units.length - 1) {kb / 1024;unitIndex;}return ${kb.toFixed(2)} ${units[unitIndex]}; } console.log(for…

北京站圆满结束!MongoDB Developer Day上海站,周六见!

上周六 MongoDB Developer Day首站北京站 80位开发者与MongoDB一起度过了充实的一天 专题讲座➕动手实操➕专家面对面交流 从数据建模、进阶查询技巧 到Atlas搜索与向量搜索 让参会伙伴们直呼“满满的技术干货&#xff01;” 全体参会者与工作人员合影 MongoDB Developer …