containerd环境下build镜像

  • 安装nerdctl
  • 使用nerdctl打包docker镜像
    • 下载安装 `buildkit`
      • 编写systemd unit文件:
      • 启用`buildkit.service`并设置开机自动运行
    • 修改Dockerfile
    • 构建镜像
  • containerd配置代理
    • containerd配置代理ansible剧本

安装nerdctl

https://blog.csdn.net/omaidb/article/details/128677718

使用nerdctl打包docker镜像

参考:
https://developer.aliyun.com/article/1094835
https://mp.weixin.qq.com/s/Bjn0s5qRh2H9I__mAYh4jg

下载安装 buildkit

nerdctl 也可以和 buildkit 结合使用来构建容器镜像,需要先下载 buildkit 的可执行文件:

# 下载buildkit
## -c 断点续传
## —P 下载到指定目录
wget -c -P /usr/local/src/ https://github.com/moby/buildkit/releases/download/v0.11.0/buildkit-v0.11.0.linux-amd64.tar.gz# 创建buildkit对应目录
mkdir -p /usr/local/containerd/# 解压buildkit到指定路径
## buildkit压缩包里有bin目录
tar -xvf buildkit-v0.11.0.linux-amd64.tar.gz -C /usr/local/containerd/

编写systemd unit文件:

# Debian系列服务文件路径 /etc/systemd/system/buildkit.service
# RHEL系列服务文件路径 /usr/lib/systemd/system/buildkit.service
[Unit]
Description=BuildKit
Documentation=https://github.com/moby/buildkit[Service]
ExecStart=/usr/local/containerd/bin/buildkitd --oci-worker=false --containerd-worker=true[Install]
WantedBy=multi-user.target

启用buildkit.service并设置开机自动运行

# 重载服务
systemctl daemon-reload# 启用buildkit.service并设置开机自动运行:
systemctl enable --now buildkit.service# 查看buildkit.service运行状态
systemctl status buildkit

修改Dockerfile

https://blog.csdn.net/omaidb/article/details/121434775

构建镜像

# 构建镜像
nerdctl build -t 构建目录# 查看构建好的镜像
nerdctl images

containerd配置代理

老是替换源太麻烦了,直接上代理
https://segmentfault.com/a/1190000020363043

# 创建/etc/systemd/system/containerd.service.d目录
mkdir /etc/systemd/system/containerd.service.d# 配置代理
cat > /etc/systemd/system/containerd.service.d/proxy.conf << EOF
> [Service]
> Environment="HTTP_PROXY=socks5://127.0.0.1:1080"
> Environment="HTTPS_PROXY=socks5://127.0.0.1:1080"  "NO_PROXY=localhost,127.0.0.1,192.168.0.0/16,10.0.0.0/8,docker-registry.somecorporation.com,isdp30x2.mirror.aliyuncs.com,hub-mirror.c.163.com,mirror.baidubce.com"'
> EOF# 重启containerd服务
systemctl daemon-reload
systemctl restart containerd# 查看配置的代理
systemctl show --property=Environment containerd.service

containerd配置代理ansible剧本

---
- hosts: alltasks:- name: 创建containerd.service.d目录file:path: /etc/systemd/system/containerd.service.dstate: directory- name: 创建proxy.conf文件file:path: /etc/systemd/system/containerd.service.d/proxy.confstate: touch- name: 为http_proxy.conf文件添加配置信息copy:content: |[Service]Environment="HTTP_PROXY=socks5://127.0.0.1:1080" Environment="HTTPS_PROXY=socks5://127.0.0.1:1080"  "NO_PROXY=localhost,127.0.0.1,docker-registry.somecorporation.com,isdp30x2.mirror.aliyuncs.com,hub-mirror.c.163.com,mirror.baidubce.com"dest: /etc/systemd/system/containerd.service.d/proxy.confnotify: 重启containerd服务handlers:- name: 重启containerd服务systemd:state: restarteddaemon_reload: yesname: containerd

containerd环境下build镜像相关推荐

  1. docker环境下mysql镜像启动后权限更改问题的解决

    问题: docker自带有mysql镜像,本文主要以mysql:5.7.24为标准,讲解用该镜像启动容器的时候,挂载的数据库目录总会被改变用户权限的问题. 1.问题回溯 如上图,可以看到,该系统是通过 ...

  2. 非域环境下使用证书部署数据库(SqlServer2008R2)镜像

    非域环境下使用证书部署数据库(SqlServer2008R2)镜像 前言 部署数据库镜像一般有两种方式域环境下部署http://liulike.blog.51cto.com/1355103/33918 ...

  3. 四叶草引导windows和linux,Windows环境下使用Clover四叶草引导双硬盘安装OSX 10.11.5原版镜像...

    作为一个穷逼大学生,想搞iOS开发 买不起Mac只能鼓捣鼓捣黑苹果啦........ 之前我的电脑通过变色龙引导的方式装了个OSX10.10和win8.1双系统,因为自学的是Swift语言之前装的OS ...

  4. 一、在windows环境下修改pip镜像源的方法(以python3为例)

    在windows环境下修改pip镜像源的方法(以python3为例) 1.在windows文件管理器中,输入 %APPDATA% 2.会定位到一个新的目录下,在该目录下新建pip文件夹,然后到pip文 ...

  5. windows更改pip源_windows环境下 更换pip镜像源

    windows  环境下 更换pip镜像(从国外源更新为国内源) 第一步: 在C:\Users\Administrator 目录下 创建pip文件 第二步: 在第一步创建的文件夹下创建pip.ini文 ...

  6. conda添加清华镜像源在cmd环境下执行下列命令

    为conda添加清华镜像源在cmd环境下执行下列命令 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda ...

  7. 超级详细:公网环境下登录 Docker 仓库: Docker Hub 或 国内阿里镜像仓库!超级解惑!(推送镜像到docker hub 或 国内阿里云镜像仓库)

    文章目录 前言: 1.登录 Docker Hub : ①.注册 或 登录 Docker Hub: ②.创建储存库: ③.开始上传镜像: ④.下载镜像: 2.使用 国内阿里云 镜像仓库: ①.开通 容器 ...

  8. 非域环境下搭建文件服务器,非域环境下SQL Server搭建Mirror(镜像)的详细步骤...

    原标题:非域环境下SQL Server搭建Mirror(镜像)的详细步骤 1.测试验证环境 服务器角色 机器名 IP SQL Server Ver 主体服务器 WIN-TestDB4O 172.83. ...

  9. 内网环境下手动部署kubernetes(v1.26.3)高可用集群

    这篇博客主要是记录了手动部署一个高可用的Kubernetes集群的过程.旨在帮助自己及初学者学习kubernetes,并记录下具体的操作过程和总结的知识点.文中可能存在一些问题或不足之处,仅供参考. ...

最新文章

  1. npm 重新安装依赖_npm-shrinkwrap锁定依赖
  2. SecureCRT上传和下载文件
  3. 11- 深度学习之神经网络核心原理与算法-卷积核典型的CNN网络
  4. List 按照中文姓名升序排列
  5. java 路由器_一篇文章,了解清楚路由器的各种组网
  6. 04_过滤器Filter_04_Filter生命周期
  7. python报表自动化系列 - 译码:与Excel单元格索引对应的十进制数坐标
  8. Django笔记 —— 模型高级进阶
  9. jQuery-对标签元素 文本操作-属性操作-文档的操作
  10. Overfeat图片分类、定位、检测
  11. 数据结构和算法——线性结构(1)数组、栈、队列和单链表
  12. ESXI5.5设置主机的时间自动同步服务 NTP
  13. vue项目打包部署到与后台同一服务器上
  14. 数学公式div是什么意思
  15. requireJS,rjs,gulp简易实现
  16. 使用 Prometheus-Operator 监控 Calico(网络监控)
  17. 如何提高团队管理能力?
  18. 服务器和交换机物理连接_利用Calico融合物理网络的云原生容器SDN方案
  19. 【优化】梯度下降 收敛性 证明
  20. 福布斯中国——2007企业排名

热门文章

  1. HDU 6194 后缀数组+单调栈
  2. 数据分析----数据清洗
  3. C++ pair 和make_pair
  4. spring-xxx-xxx-0.0.1-SNAPSHOT.jar中没有主清单属性完美解决
  5. socket10053
  6. 1602自定义字模方法 CGRAM
  7. 很有意思的十句话,说说背后的故事。
  8. 高效构建基于Python的商品评论文本挖掘网页APP
  9. Java 命名规范---阿里Java开发手册
  10. netcat 下载地址