当前位置: 首页 > news >正文

ubuntu24.04.2安装docker自动化脚本

脚本

#!/bin/bash# Docker安装脚本 for Ubuntu 24.04.2# 检查是否为root用户
if [ "$(id -u)" -ne 0 ]; thenecho "请使用root用户或通过sudo运行此脚本"exit 1
fi# 更新软件包索引
#!/bin/bash# Docker安装脚本 for Ubuntu 24.04 (Noble Numbat)# 检查是否为root用户
if [ "$(id -u)" -ne 0 ]; thenecho "请使用root用户或通过sudo运行此脚本"exit 1
fi# 1. 更新软件包索引
echo "正在更新软件包索引..."
apt-get update -qq# 2. 安装必要依赖
echo "正在安装必要依赖..."
apt-get install -qq -y \ca-certificates \curl \gnupg \lsb-release# 3. 添加Docker官方GPG密钥(强制覆盖旧密钥)
echo "正在添加Docker官方GPG密钥..."
mkdir -p /etc/apt/keyrings
rm -f /etc/apt/keyrings/docker.gpg  # 强制删除旧密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg# 4. 添加Docker仓库(针对Ubuntu 24.04)
echo "正在设置Docker稳定版仓库..."
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null# 5. 再次更新软件包索引
echo "再次更新软件包索引..."
apt-get update -qq# 6. 安装Docker引擎
echo "正在安装Docker引擎..."
apt-get install -qq -y \docker-ce \docker-ce-cli \containerd.io \docker-buildx-plugin \docker-compose-plugin# 7. 验证安装
echo "验证Docker安装..."
if docker --version &> /dev/null; thenecho "Docker已成功安装:"docker --version
elseecho "Docker安装失败,尝试手动修复..."# 尝试修复密钥问题apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7EA0A9C3F273FCD8apt-get update -qqapt-get install -y docker-ce docker-ce-cli containerd.io
fi# 8. 将当前用户添加到docker组
read -p "是否要将当前用户添加到docker组?(y/n): " add_to_docker_group
if [ "$add_to_docker_group" = "y" ] || [ "$add_to_docker_group" = "Y" ]; thenusermod -aG docker $SUDO_USERecho "已将用户 $SUDO_USER 添加到docker组。需要注销后重新登录才能生效。"
fiecho "Docker安装完成!"

安装效果

在这里插入图片描述

相关文章:

  • 强化学习 A2C算法
  • java 将多张图片合成gif动态图
  • 微服务--nacos+feign
  • NY197NY205美光闪存固态NY218NY226
  • 两个矩阵的卷积运算
  • 算法导论第五章:概率分析与随机算法的艺术
  • 篇章六 系统性能优化——资源优化——CPU优化(3)
  • 当空间与数据联动,会展中心如何打造智慧运营新范式?
  • 利用 Python 爬虫按关键字搜索 1688 商品
  • 学生端前端用户操作手册
  • Rust 学习笔记2025.6.13
  • python transformers库笔记(BertTokenizerFast类)
  • 阳台光伏配套电表ADL200N-CT/D16-Wf-1
  • 如何用4 种可靠的方法更换 iPhone(2025 年指南)
  • 8N65-ASEMI工业自动化领域专用8N65
  • Bean对象不同的方式注入,是不同的annotation接口描述
  • Volta 管理 Node 版本最佳实践教程
  • SpringBoot深度解析:从核心原理到最佳实践
  • Redis的string的底层实现原理
  • 使用 C/C++ 和 OpenCV DNN 进行人体姿态估计
  • wordpress许愿插件/哈尔滨seo关键词排名
  • 青岛个人网站制作/友情链接怎么弄
  • 24小时二手表网站/推广赚钱的平台
  • 如何做网站seo韩小培/网站优化 推广
  • 电镀加工技术支持 东莞网站建设/安卓优化
  • 大连百度推广seo/深圳网站seo推广