From 39e464c754a9c9e56f4b2432af0237e4d3a8088d Mon Sep 17 00:00:00 2001 From: joy Date: Thu, 30 Oct 2025 22:21:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20scripts/containerd.sh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1213 --- scripts/containerd.sh | 44 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/scripts/containerd.sh b/scripts/containerd.sh index 62e274f..9827918 100644 --- a/scripts/containerd.sh +++ b/scripts/containerd.sh @@ -95,9 +95,48 @@ pre_check() { done log "INFO" "前置检查通过" } +###################################### +# 安装必要依赖(屏蔽冗余日志,仅捕错) +install_dependencies() { + print_step "正在安装依赖工具" + # apt-get 静默执行,日志重定向到/dev/null,仅保留错误输出 + if ! apt-get update -qq >/dev/null 2>&1; then + print_error "更新软件源失败" + exit 1 + fi + if ! apt-get install -qq -y ca-certificates curl gnupg lsb-release >/dev/null 2>&1; then + print_error "安装依赖(ca-certificates/curl等)失败" + exit 1 + fi + print_success "依赖工具安装完成" +} + +# 添加Docker GPG密钥(自动覆盖,屏蔽日志) +add_gpg_key() { + print_step "正在添加Docker GPG密钥" + mkdir -p /etc/apt/keyrings + # curl+gpg 静默执行,自动覆盖现有文件 + if ! curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg >/dev/null 2>&1; then + print_error "添加GPG密钥失败(网络或密钥地址异常)" + exit 1 + fi + print_success "GPG密钥添加完成" +} + +# 添加Docker源(屏蔽日志) +add_docker_repo() { + print_step "正在配置Docker软件源" + # 写入源配置,更新源时静默执行 + echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list >/dev/null 2>&1 + if ! apt-get update -qq >/dev/null 2>&1; then + print_error "更新Docker软件源失败" + exit 1 + fi + print_success "Docker软件源配置完成" +} ####################################### -# 验证版本可用性(依赖系统已有源) +# 验证版本可用性 ####################################### verify_version() { log "INFO" "验证版本${CONTAINERD_VERSION}可用性" @@ -264,6 +303,9 @@ main() { # 分支执行 case "$ACTION" in install) + install_dependencies + add_gpg_key + add_docker_repo verify_version install_containerd configure_containerd # 仅含核心配置(无镜像加速)