containerd配置HTTP私仓

这篇具有很好参考价值的文章主要介绍了containerd配置HTTP私仓。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 🛠️ 基础环境配置

📌 安装基础环境请参考:
[Ubuntu 22.04] 安装K8S基础环境准备脚本

2. 🐳 Docker安装

📌 docker安装请参考:
[Ubuntu 22.04] 安装docker,并设置镜像加速

3. 🚢 部署Harbor,HTTP访问

📌 [Ubuntu 22.04] 安装Harbor#HTTP方式

🔍 浏览器中输入:http://192.168.11.20,即可访问刚才部署的harbor

4. 📦 部署ContainerD

📌 containerd的安装请参考:
[Ubuntu 22.04] 安装containerd

5. 🔄 修改docker配置文件,向harbor中推入镜像

🎯 目标:向第三步部署的harbor仓库中推入镜像仓库

根据目前的环境,有两种方式可以向harbor中推入镜像。其一是通过dockerharbor中推入镜像仓库。其二是通过containerdharbor中推入镜像

由于目前我们对于containerd并不熟悉,因此我们先直接通过dockerharbor中推入镜像,由于我们自己搭建的harbor是私有仓库,并且是HTTP的方式,因此我们需要配置docker的配置文件。

你可以重新找一台机器安装docker做实验,或者直接使用harbor那台机器也可以,这里我直接使用harbor那台机器上的docker工具,向harbor推送镜像。

配置修改如下,主要是增加了insecure-registries配置,如果你的配置文件中包含其它的配置,请不要直接执行,否则会覆盖你的配置。;另外,请一定要注意80端口,这个不能省略,否则docker会以https的方式访问harbor

tee /etc/docker/daemon.json << 'EOF'
{
    "registry-mirrors": [
        "http://hub-mirror.c.163.com",
        "https://mirror.baidubce.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://registry.docker-cn.com",
        "https://dockerproxy.com",
        "https://ccr.ccs.tencentyun.com",
        "https://registry.cn-hangzhou.aliyuncs.com"
    ],
    "insecure-registries": ["192.168.11.20:80"]
}
EOF

systemctl restart docker.service

这里我随便推送harbor的一个镜像到我自己的harbor仓库当中,操作如下,第一步:重新打tag, 第二步:docker push这里需要注意的是,再推送镜像之前,一定要在登录harbor,提前建立仓库目录,否则推送会被拒绝,另外,静态的Tag所指向的仓库端口必须要显式指定80端口,否则默认使用443端口

root@harbor-http:~/harbor#
root@harbor-http:~/harbor#
root@harbor-http:~/harbor# cat /etc/docker/daemon.json
{
    "registry-mirrors": [
        "http://hub-mirror.c.163.com",
        "https://mirror.baidubce.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://registry.docker-cn.com",
        "https://dockerproxy.com",
        "https://ccr.ccs.tencentyun.com",
        "https://registry.cn-hangzhou.aliyuncs.com"
    ],
    "insecure-registries": ["192.168.11.20:80","192.168.11.30"]
}
root@harbor-http:~/harbor# docker images
REPOSITORY                    TAG       IMAGE ID       CREATED        SIZE
goharbor/redis-photon         v2.8.2    6f4498a430ca   7 weeks ago    121MB
goharbor/harbor-registryctl   v2.8.2    fa61a236a6d6   7 weeks ago    142MB
goharbor/registry-photon      v2.8.2    f80e71363231   7 weeks ago    79.3MB
goharbor/nginx-photon         v2.8.2    3d009028f260   7 weeks ago    120MB
goharbor/harbor-log           v2.8.2    2914d282d9bf   7 weeks ago    127MB
goharbor/harbor-jobservice    v2.8.2    40118f1568a8   7 weeks ago    141MB
goharbor/harbor-core          v2.8.2    0bbbd1f379fc   7 weeks ago    165MB
goharbor/harbor-portal        v2.8.2    3e74e0758aa4   7 weeks ago    127MB
goharbor/harbor-db            v2.8.2    5126635ae9f0   7 weeks ago    174MB
goharbor/prepare              v2.8.2    eb3cf3cdd17a   7 weeks ago    163MB
hello-world                   latest    9c7a54a9a43c   2 months ago   13.3kB
root@harbor-http:~/harbor#
root@harbor-http:~/harbor# docker tag goharbor/harbor-core:v2.8.2 192.168.11.20:80/goharbor/harbor-core:v2.8.2
root@harbor-http:~/harbor#
root@harbor-http:~/harbor# docker login -u admin -p harbor666 192.168.11.20:80
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded
root@harbor-http:~/harbor#
root@harbor-http:~/harbor# docker push 192.168.11.20:80/goharbor/harbor-core:v2.8.2
The push refers to repository [192.168.11.20:80/goharbor/harbor-core]
c8ec2ddada08: Pushed
e1c4f1102d2f: Pushed
17583ba2a843: Pushed
0a049ad6bb06: Pushed
557ccce847e1: Pushed
9cb5dd968a55: Pushed
06d8a79a810a: Pushed
88edeb5b4944: Pushed
c00acf6f4f58: Pushed
21e7914e06fb: Pushed
v2.8.2: digest: sha256:654efa193924544a680f1cc7aaadb8d9fb4e1dcaa8c84a74c71b7fe861973838 size: 2411
root@harbor-http:~/harbor#
root@harbor-http:~/harbor# docker images
REPOSITORY                              TAG       IMAGE ID       CREATED        SIZE
goharbor/redis-photon                   v2.8.2    6f4498a430ca   7 weeks ago    121MB
goharbor/harbor-registryctl             v2.8.2    fa61a236a6d6   7 weeks ago    142MB
goharbor/registry-photon                v2.8.2    f80e71363231   7 weeks ago    79.3MB
goharbor/nginx-photon                   v2.8.2    3d009028f260   7 weeks ago    120MB
goharbor/harbor-log                     v2.8.2    2914d282d9bf   7 weeks ago    127MB
goharbor/harbor-jobservice              v2.8.2    40118f1568a8   7 weeks ago    141MB
192.168.11.20:80/goharbor/harbor-core   v2.8.2    0bbbd1f379fc   7 weeks ago    165MB
goharbor/harbor-core                    v2.8.2    0bbbd1f379fc   7 weeks ago    165MB
goharbor/harbor-portal                  v2.8.2    3e74e0758aa4   7 weeks ago    127MB
goharbor/harbor-db                      v2.8.2    5126635ae9f0   7 weeks ago    174MB
goharbor/prepare                        v2.8.2    eb3cf3cdd17a   7 weeks ago    163MB
hello-world                             latest    9c7a54a9a43c   2 months ago   13.3kB
root@harbor-http:~/harbor#

containerd http,ContainerD,http,网络协议,网络

containerd http,ContainerD,http,网络协议,网络

6. 配置containerd

mkdir -p /etc/containerd/certs.d/192.168.11.20:80
tee /etc/containerd/certs.d/192.168.11.20:80/hosts.toml << 'EOF'
server = "http://192.168.11.20:80"

[host."http://192.168.11.20:80"]
  capabilities = ["pull", "resolve", "push"]
  skip_verify = true
EOF

systemctl restart containerd.service

6.1. 拉取镜像验证

执行:ctr image pull --plain-http=true 192.168.11.20:80/goharbor/harbor-core:v2.8.2

root@containerd:~#
root@containerd:~# ctr image ls -q
docker.io/library/redis:alpine
root@containerd:~# cat /etc/containerd/certs.d/192.168.11.20\:80/hosts.toml
server = "http://192.168.11.20:80"

[host."http://192.168.11.20:80"]
  capabilities = ["pull", "resolve", "push"]
  skip_verify = true
root@containerd:~#
root@containerd:~#
root@containerd:~# ctr image pull --plain-http=true  192.168.11.20:80/goharbor/harbor-core:v2.8.2
192.168.11.20:80/goharbor/harbor-core:v2.8.2:                                     resolved       |++++++++++++++++++++++++++++++++++++++|
manifest-sha256:654efa193924544a680f1cc7aaadb8d9fb4e1dcaa8c84a74c71b7fe861973838: done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:aea1be403dd1c4dce59794761f350e4706eb70771631535689e2b06a0a241001:    done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:548383ab94bf8b81b55cabf36298e0b14cca610a07a1ebd5bba013fa61ffab96:    done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:06212d50621c9654d97e7ec78e972b5017e139b11763375ee4c28bace1fcc087:    done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:cf14510ec51c323f283e583a5aabfa33337680e953b07d83162a6c5b5d72defc:    done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:b6c3d89688aed77dcbea624088f7613ac0923ca1f0398c42f0c79503a03baed6:    done           |++++++++++++++++++++++++++++++++++++++|
config-sha256:0bbbd1f379fc1f577c5db15c9deac4a218637e4af0196d97e6771f59d9815355:   done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:b3381433ebd4d04b664639ab510a6659fec0268dc222de8fb085da676f017cb4:    done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:b70a76c262e454573e9550cb64962b84a338d78d6f1db4ee9464cce0a8a47dcd:    done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:378fedafb8051764d80ec29260e7bf3101aabe84b72b23c5829deb2a445391a8:    done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:f9cd03857d3ab614d97d896de3496a66dffaf4cf5b2051cda730d028d6def94e:    done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:a3c670ddffbdf7be0c56baae8213258ee6cf339929c86b29905dd11808c80a34:    done           |++++++++++++++++++++++++++++++++++++++|
elapsed: 0.5 s                                                                    total:  47.1 M (94.2 MiB/s)
unpacking linux/amd64 sha256:654efa193924544a680f1cc7aaadb8d9fb4e1dcaa8c84a74c71b7fe861973838...
done: 1.256989921s
root@containerd:~#
root@containerd:~#
root@containerd:~# ctr image ls -q
192.168.11.20:80/goharbor/harbor-core:v2.8.2
docker.io/library/redis:alpine
root@containerd:~#

6.2. 推送镜像验证

执行:ctr image push --plain-http=true -u admin:harbor666 192.168.11.20:80/goharbor/harbor-core:v2.8.3

root@containerd:~#
root@containerd:~# ctr image ls -q
192.168.11.20:80/goharbor/harbor-core:v2.8.2
docker.io/library/redis:alpine
root@containerd:~#
root@containerd:~# ctr image tag  192.168.11.20:80/goharbor/harbor-core:v2.8.2 192.168.11.20:80/goharbor/harbor-core:v2.8.3
192.168.11.20:80/goharbor/harbor-core:v2.8.3
root@containerd:~# ctr image ls -q
192.168.11.20:80/goharbor/harbor-core:v2.8.2
192.168.11.20:80/goharbor/harbor-core:v2.8.3
docker.io/library/redis:alpine
root@containerd:~#
root@containerd:~# ctr image push --plain-http=true -u admin:harbor666  192.168.11.20:80/goharbor/harbor-core:v2.8.3
manifest-sha256:654efa193924544a680f1cc7aaadb8d9fb4e1dcaa8c84a74c71b7fe861973838: done           |++++++++++++++++++++++++++++++++++++++|
config-sha256:0bbbd1f379fc1f577c5db15c9deac4a218637e4af0196d97e6771f59d9815355:   done           |++++++++++++++++++++++++++++++++++++++|
elapsed: 0.2 s                                                                    total:  7.7 Ki (38.4 KiB/s)
root@containerd:~#
root@containerd:~#

containerd http,ContainerD,http,网络协议,网络文章来源地址https://www.toymoban.com/news/detail-854290.html

到了这里,关于containerd配置HTTP私仓的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • docker、containerd 配置国内容器镜像源

    国内容器镜像源地址:registry.aliyuncs.com/google_containers 文件路径:/etc/containerd/config.toml 在文件中加入一下配置 如下所示 在红框内容的下面添加 文件路径:/etc/docker/daemon.json 添加如下配置 “registry-mirrors”: [“registry.aliyuncs.com/google_containers”] 如下图所示 systemctl daemon-reload 以下

    2024年02月13日
    浏览(38)
  • Kubernetes ≥ 1.25 Containerd配置Harbor私有镜像仓库

    containerd 实现了 kubernetes 的 Container Runtime Interface (CRI) 接口,提供容器运行时核心功能,如镜像管理、容器管理等,相比 dockerd 更加简单、健壮和可移植。 从docker过度还是需要一点时间慢慢习惯的,今天来探讨containerd 如何从无域名与权威证书的私有仓库harbor,下载镜像! c

    2024年01月15日
    浏览(44)
  • 解决 Http Maven 私仓的依赖包无法下载,提示被 maven-default-http-blocker 拦截

    用到了HTTP接口的Maven私仓 maven版本是3.8.1级以上 pom文件已经配置了 repository 才尝试更新pom文件,重新下载依赖,或者,mvn clean compile重新编译的时候,会提示类似下面的错误信息: 另一种可能的错误提示:   错误的提示都指向 maven-default-http-blocker 这是由于Maven官方为了解决

    2024年02月08日
    浏览(39)
  • k8s containerd集群配置安装完整踩坑教程

    完整踩坑和精简内容 containerd安装参考 k8s安装参考 两台机器 系统 CentOS 7.9 1、关闭swap 2、网桥设置 3、ipvs设置 4、关闭防火墙 5、禁用selinux 6、添加源 在所有节点上执行 1、安装最新的kubectl kubelet kubeadm 2、安装containerd 安装 配置 重启 3、安装crictl 编写配置文件 下载镜像 mast

    2024年02月09日
    浏览(67)
  • 【Harbor Https】Harbor部署https并配置containerd拉取镜像

    新项目,要接手另一个k8s集群,那个集群是kubernates1.24的rke2版本,里面已经不用docker容器了,使用了containerd容器来生成pod,因此需要变化我们以前的docker使用方式。首先第一步需要把harbor的镜像由http更改为https。 这里我使用harbor安装的ip【10.38.199.203】地址来生成证书,也可

    2024年02月04日
    浏览(42)
  • 网络协议HTTP/1、HTTP/2 及 HTTP/3详解

    目录 概述  一、发展史 HTTP/1.1  Keep-alive  动静分离  HTTP/2 二进制传输   多路复用 Header 压缩 服务端 Push  HTTP/3 QUIC  多路复用 0-RTT 纠错机制 三、小结 HTTP(Hyper Text Transformer Protocol,超文本传输协议)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到

    2024年02月02日
    浏览(56)
  • 网络协议 - HTTP 协议详解

    HTTP 协议详解,web开发必备。 URI 包含 URL 和 URN,目前 WEB 只有 URL 比较流行,所以见到的基本都是 URL。 URI(Uniform Resource Identifier,统一资源标识符) URL(Uniform Resource Locator,统一资源定位符) URN(Uniform Resource Name,统一资源名称) 1. 请求报文 2. 响应报文 客户端发送的 请求报文 第

    2024年02月04日
    浏览(53)
  • 【网络协议】聊聊http协议

    当我们输入www.baidu.com的时候,其实是先将baidu.com的域名进行DNS解析,转换成对应的ip地址,然后开始进行基于TCP构建三次握手的连接,目前使用的是1.1 默认是开启了keep-Alive。可以在多次请求中进行连接复用。 连接建立之后,就要发送HTTP的请求了, 整体其实就是三部分,请

    2024年02月06日
    浏览(58)
  • 网络协议与攻击模拟-21-HTTP协议

    1、 HTTP 协议结构 2、在 Windows server 去搭建 web 服务器 3、分析 HTTP 协议流量 1、概念 HTTP (超文本传输协议)是用于在万维网服务器上传输超文本( HTML )到本地浏览器的传输协议 属于 TCP / IP 协议簇的一员( HTML 文件、图片、查询结构等) 基于传输层 TCP 的80端口 2、万维网服

    2024年02月16日
    浏览(41)
  • 【网络】HTTP协议详解

    😀大家好,我是 白晨 ,一个不是很能熬夜😫,但是也想日更的人✈。 如果喜欢这篇文章, 点个赞 👍, 关注一下 👀白晨吧!你的支持就是我最大的动力!💪💪💪 哟,大家好,我是白晨。距离上一次更新已经过了一段时间了,属实是当鸽子当惯了🤣。 上一篇文章我们

    2024年02月02日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包