從零實現 registry.k8s.io/pause:3.8 鏡像的導出與導入

以下是為 registry.k8s.io/pause:3.8 鏡像的導出與導入操作定制的完整教程,適用于 Kubernetes 集群中使用 containerd 作為容器運行時的場景。本教程包含詳細步驟、常見問題解析及注意事項。


從零實現 registry.k8s.io/pause:3.8 鏡像的導出與導入

背景說明

Kubernetes 基礎鏡像 registry.k8s.io/pause:3.8 是 Pod 沙箱容器的基礎組件,若因網絡問題(如訪問 k8s.gcr.io 受限)導致無法直接拉取,可通過替代鏡像源獲取并手動導入到 containerd 中。本教程提供全流程操作指南。


步驟一:拉取替代鏡像

由于直接訪問 registry.k8s.io 可能受限,建議使用國內鏡像源(如阿里云鏡像倉庫)拉取同名鏡像:

# 從阿里云鏡像源拉取 pause:3.8
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.8# 重命名為 Kubernetes 官方鏡像名稱
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.8 registry.k8s.io/pause:3.8

步驟二:導出鏡像為 tar 文件

將鏡像打包為離線文件以便傳輸:

docker save registry.k8s.io/pause:3.8 -o pause-3.8.tar

步驟三:導入鏡像至 containerd

使用 ctr 工具將鏡像導入到 containerdk8s.io 命名空間(關鍵步驟):

# 導入鏡像到 k8s.io 命名空間
sudo ctr -n k8s.io images import pause-3.8.tar# 驗證鏡像是否存在
sudo ctr -n k8s.io images ls | grep "pause:3.8"

注意-n k8s.io 必須指定,否則鏡像會被導入到 default 命名空間,導致 Kubernetes 無法識別。


步驟四:驗證鏡像可用性

創建一個測試 Pod 以確認鏡像加載成功:

# test-pause.yaml
apiVersion: v1
kind: Pod
metadata:name: test-pause
spec:containers:- name: pause-containerimage: registry.k8s.io/pause:3.8command: ["/pause"]

執行以下命令驗證:

kubectl apply -f test-pause.yaml
kubectl get pod test-pause -o wide

若 Pod 狀態為 Running,則表明鏡像導入成功。


常見問題與解決方案

1. 鏡像導入后 Pod 仍處于 ContainerCreating 狀態

  • 原因:鏡像未正確導入到 k8s.io 命名空間。
  • 解決
    # 刪除錯誤命名空間的鏡像
    sudo ctr -n default images rm registry.k8s.io/pause:3.8
    # 重新導入到 k8s.io
    sudo ctr -n k8s.io images import pause-3.8.tar
    

2. 拉取鏡像時網絡超時

  • 原因:國內訪問 registry.k8s.io 受限。
  • 解決:改用以下鏡像源:
    # 阿里云鏡像
    docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.8
    # 或 Google 鏡像代理
    docker pull mirrorgooglecontainers/pause:3.8
    

3. ctr 命令缺失 tag 功能

  • 現象:低版本 ctr 不支持直接重命名鏡像。
  • 解決:通過 docker tag 重命名后再導出:
    docker tag mirrorgooglecontainers/pause:3.8 registry.k8s.io/pause:3.8
    

高級操作:批量處理鏡像

若需批量導出多個鏡像,可編寫自動化腳本:

#!/bin/bash
# 導出鏡像列表
IMAGES=("pause:3.8" "nginx:1.25")
for IMAGE in "${IMAGES[@]}"; dodocker pull registry.cn-hangzhou.aliyuncs.com/google_containers/${IMAGE}docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/${IMAGE} registry.k8s.io/${IMAGE}docker save registry.k8s.io/${IMAGE} -o ${IMAGE//:/_}.tar
done

附錄:關鍵命令速查表

操作命令
拉取替代鏡像docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.8
重命名鏡像docker tag <源鏡像> registry.k8s.io/pause:3.8
導出為 tar 文件docker save registry.k8s.io/pause:3.8 -o pause-3.8.tar
導入到 containerdsudo ctr -n k8s.io images import pause-3.8.tar
驗證鏡像列表sudo ctr -n k8s.io images ls | grep pause

參考文檔

  • Containerd 鏡像導入問題解析
  • Kubernetes 集群初始化與鏡像處理

通過本教程,可高效解決 registry.k8s.io/pause:3.8 鏡像的離線部署問題,適用于內網環境或網絡受限場景。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/78297.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/78297.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/78297.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Redis和MQ的區別

redis是一個高性能的key-value數據庫&#xff0c;支持消息推送功能&#xff0c;可以當做一個輕量級的隊列服務器使用。 redis只是提供一個高性能的、原子操作內存鍵值隊&#xff0c;具有高速訪問能力&#xff0c;雖然可以做消息隊列的存儲&#xff0c;但不具備消息隊列的任何功…

Centos7系統防火墻使用教程

CentOS 7是一種常見的Linux操作系統&#xff0c;防火墻作為網絡安全的第一道防線&#xff0c;對于服務器的安全至關重要。本文將介紹CentOS 7系統中防火墻的使用教程&#xff0c;包括如何開啟、關閉、配置以及防火墻規則的添加和刪除。 一、查看防火墻狀態 在開始操作之前&am…

Uniapp:navigator(頁面跳轉)

目錄 一、基本概述二、屬性說明三、具體使用一、基本概述 頁面跳轉。該組件類似HTML中的<a>組件,但只能跳轉本地頁面。目標頁面必須在pages.json中注冊。 二、屬性說明 屬性名類型默認值說明平臺差異說明urlString應用內的跳轉鏈接,值為相對路徑或絕對路徑,如:“……

大疆機場及無人機上云(航線規劃、指令飛行...)

系統操作預覽&#xff1a; 包含一鍵起飛、指令飛行、云臺控制、變焦、航線規劃、空域規劃、成果數據展示、實時飛行模擬、任務派發等 大疆無人機飛控平臺&#xff08;航線規劃、機場3、私有化部署&#xff09;_嗶哩嗶哩_bilibili 2025-04-02 更新 start、 已支持大疆機場3。…

【運維】云端掌控:用Python和Boto3實現AWS資源自動化管理

《Python OpenCV從菜鳥到高手》帶你進入圖像處理與計算機視覺的大門! 解鎖Python編程的無限可能:《奇妙的Python》帶你漫游代碼世界 在云計算時代,AWS(Amazon Web Services)作為領先的云服務平臺,其資源管理的高效性對企業至關重要。本文深入探討如何利用Python的boto3…

Java ThreadLocal與內存泄漏

當我們利用 ThreadLocal 來管理數據時&#xff0c;我們不可避免地會面臨內存泄漏的風險。 原因在于 ThreadLocal 的工作方式。當我們在當前線程的 ThreadLocalMap 中存儲一個值時&#xff0c;一旦這個值不再需要&#xff0c;釋放它就變得至關重要。如果不這樣做&#xff0c;那么…

Linux之netlink(2)libnl使用介紹(1)

Linux之netlink(2)Libnl3使用介紹(1) Author&#xff1a;Onceday Date&#xff1a;2025年4月26日 漫漫長路&#xff0c;才剛剛開始… 全系列文章可查看專欄: Linux內核知識_Once-Day的博客-CSDN博客 本文翻譯自libnl3官方文檔&#xff1a;Netlink Library (libnl) 參考文檔…

深入理解TransmittableThreadLocal:原理、使用與避坑指南

一、ThreadLocal與InheritableThreadLocal回顧 在介紹TransmittableThreadLocal之前&#xff0c;我們先回顧一下Java中的ThreadLocal和InheritableThreadLocal。 1. ThreadLocal ThreadLocal提供了線程局部變量&#xff0c;每個線程都可以通過get/set訪問自己獨立的變量副本…

Linux下的I/O復用技術之epoll

I/O多路復用 指在單個線程或進程中&#xff0c;同時處理多個I/O操作的技術。 旨在提高程序處理多個并發I/O操作的能力&#xff0c;避免程序因等待某個I/O操作而被阻塞。在傳統的I/O模型中當程序進行I/O操作時(如讀取文件、接受網路數據等)&#xff0c;如果數據還未準備好&…

用 C 語言實現通用的冒泡排序算法

在日常編程中&#xff0c;排序算法是一個非常常見且重要的工具。雖然有許多排序算法可以選擇&#xff0c;但如果你需要一個能夠處理不同數據類型的排序算法&#xff0c;如何設計一個通用的排序算法呢&#xff1f;今天我們將實現一個通用的冒泡排序算法&#xff0c;支持不同數據…

C# 變量全解析:聲明、初始化與使用

在多用途的編程語言中&#xff0c;程序存取數據是一項基礎且關鍵的功能&#xff0c;而這一功能主要通過變量來實現。本文將全面深入地探討 C# 中的變量&#xff0c;包括變量的種類、聲明、初始化、自動初始化、多變量聲明以及如何使用變量的值。 變量概述 變量是一個名稱&…

Dify中的文本分詞處理技術詳解

Dify中的文本分詞處理技術詳解 引言核心架構概覽索引處理器工廠 文本分詞技術詳解基礎分詞器增強型遞歸字符分詞器固定分隔符文本分詞器遞歸分割算法 索引處理器中的分詞應用特殊索引處理器的分詞特點問答索引處理器父子索引處理器 分詞技術的應用場景技術亮點與優勢總結 引言 …

如何打包python程序為可執行文件

將 Python 程序打包為可執行文件是一個常見需求&#xff0c;尤其是在希望將應用程序分享給不具備 Python 環境的用戶時。以下是使用 PyInstaller 工具將 Python 程序打包為可執行文件的步驟。 步驟 1&#xff1a;安裝 PyInstaller 如果您還沒有安裝 PyInstaller&#xff0c;請…

美團Java后端二面面經!

場景題是面試的大頭&#xff0c;建議好好準備 Q. [美團]如何設計一個外賣訂單的并發扣減庫存系統&#xff1f; Q.[美團]為啥初始標記和重新標記需要STW&#xff1f; Q.[美團]騎手位置實時更新&#xff0c;如何保證高并發寫入&#xff1f; Q.[美團]訂單表數據量過大導致查詢…

在應用運維過程中,業務數據修改的證據留存和數據留存

在應用運維過程中,業務數據修改的證據留存和數據留存至關重要,以下是相關介紹: 一、證據留存 操作日志記錄 : 詳細記錄每一次業務數據修改的操作日志,包括操作人員、操作時間、修改內容、修改前后數據的對比等。例如,某公司業務系統中,操作日志會精確記錄員工小張在 2…

Eigen迭代求解器類

1. 迭代求解器核心類概覽 Eigen 提供多種迭代法求解稀疏線性方程組 AxbAxb&#xff0c;適用于大規模稀疏矩陣&#xff1a; 求解器類適用矩陣類型算法關鍵特性ConjugateGradient對稱正定&#xff08;SPD&#xff09;共軛梯度法&#xff08;CG&#xff09;高精度&#xff0c;內…

ORACLE數據庫備份入門:第四部分:2-備份場景舉例

下面以4個常見的場景為例&#xff0c;介紹如何規劃備份方案。備份方案沒有標準答案&#xff0c;需要根據實現情況來制定&#xff0c;也和管理員的個人使用習慣有很大相關性。 1 交易型數據庫備份 以銀行的交易系統為例&#xff0c;除了前一章節提到的關于RPO和RTO的指標外&am…

小白如何學會完整挪用Github項目?(以pix2pix為例)

[目錄] 0.如何完整地復現/應用一個Github項目 1.建立適用于項目的環境 2.數據準備與模型訓練階段 3.訓練過程中的一些命令行調試必備知識0.如何完整地復現/應用一個Github項目 前日在健身房的組間同一位好友交流時&#xff0c;得到了一個一致結論—— ** Github \texttt{Githu…

藍橋杯 5. 交換瓶子

交換瓶子 原題目鏈接 題目描述 有 N 個瓶子&#xff0c;編號為 1 ~ N&#xff0c;放在架子上。 例如有 5 個瓶子&#xff0c;當前排列為&#xff1a; 2 1 3 5 4每次可以拿起 2 個瓶子&#xff0c;交換它們的位置。 要求通過若干次交換&#xff0c;使得瓶子的編號從小到大…