news 2026/7/1 17:59:26

SSH 服务部署 + Docker(指定版本)完整安装 的一体化操作流程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SSH 服务部署 + Docker(指定版本)完整安装 的一体化操作流程

SSH 服务部署 + Docker(指定版本)完整安装的一体化操作流程(适配 Ubuntu 24.04,全程权限 / 兼容性优化,可直接复制批量执行):

核心说明

  • 整合 SSH 安装、Docker 指定版本(28.0.0)+ docker-compose-plugin(2.32.1)安装
  • 适配 Ubuntu 24.04(Noble),自动兼容系统架构(x86/arm)
  • 每步带日志输出,便于排查问题
#!/bin/bash set -e # 遇到错误立即退出,避免后续无效操作 # ============================================== # 阶段1:基础环境准备 & SSH服务部署 # ============================================== echo -e "\033[32m===== 阶段1:基础环境准备 & SSH服务部署 =====\033[0m" # 步骤1:查询系统版本(确认系统类型/版本,适配Docker源) echo -e "\n===== 1.1 查询系统版本 =====" lsb_release -a 2>/dev/null || cat /etc/os-release UBUNTU_CODENAME=$(lsb_release -cs 2>/dev/null || grep VERSION_CODENAME /etc/os-release | cut -d= -f2) echo "当前Ubuntu版本代号:${UBUNTU_CODENAME}" # 步骤1.2:更新系统软件源(确保包最新) echo -e "\n===== 1.2 更新软件源 =====" sudo apt update -y # 步骤1.3:安装net-tools(兼容netstat端口查询) echo -e "\n===== 1.3 安装net-tools工具包 =====" sudo apt install net-tools -y # 步骤1.4:安装OpenSSH服务端 echo -e "\n===== 1.4 安装OpenSSH服务端 =====" sudo apt install openssh-server -y # 步骤1.5:启动SSH服务 + 设置开机自启 echo -e "\n===== 1.5 启动并设置SSH开机自启 =====" sudo systemctl start ssh sudo systemctl enable ssh sudo systemctl status ssh --no-pager # 步骤1.6:验证SSH端口监听(双工具验证) echo -e "\n===== 1.6 验证SSH端口监听 =====" sudo ss -tnlp | grep ssh sudo netstat -tnlp | grep ssh ss -tuln | grep -E '22|ssh' # 步骤1.7:防火墙放行SSH端口(关键) echo -e "\n===== 1.7 防火墙放行SSH 22端口 =====" sudo ufw status 2>/dev/null || echo "ufw未安装,跳过放行" sudo ufw allow 22/tcp 2>/dev/null sudo ufw reload 2>/dev/null # 步骤1.8:SSH最终验证 echo -e "\n===== 1.8 SSH最终验证 =====" echo "SSH服务状态:$(sudo systemctl is-active ssh)" echo "SSH开机自启:$(sudo systemctl is-enabled ssh)" echo "SSH监听端口:$(sudo ss -tnlp | grep ssh | awk '{print $4}')" # ============================================== # 阶段2:Docker(指定版本)+ docker-compose-plugin 安装 # ============================================== echo -e "\n\n\033[32m===== 阶段2:Docker指定版本安装 =====\033[0m" # 步骤2.1:安装Docker依赖包 echo -e "\n===== 2.1 安装Docker依赖 =====" sudo apt-get install -y ca-certificates curl gnupg lsb-release # 步骤2.2:添加Docker官方GPG密钥(适配新版APT密钥存储) echo -e "\n===== 2.2 添加Docker GPG密钥 =====" sudo mkdir -p /etc/apt/trusted.gpg.d curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/docker.gpg # 步骤2.3:添加Docker APT源(适配当前Ubuntu版本) echo -e "\n===== 2.3 添加Docker APT源 =====" echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/docker.gpg] https://download.docker.com/linux/ubuntu ${UBUNTU_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null # 步骤2.4:更新APT缓存(使Docker源生效) echo -e "\n===== 2.4 更新APT缓存 =====" sudo apt-get update -y # 步骤2.5:列出可安装的Docker版本(确认目标版本存在) echo -e "\n===== 2.5 列出可安装的Docker CE版本 =====" apt-cache madison docker-ce | grep 28.0.0 # 步骤2.6:安装指定版本Docker(28.0.0-1~ubuntu.24.04~noble) echo -e "\n===== 2.6 安装Docker 28.0.0 =====" DOCKER_VERSION="5:28.0.0-1~ubuntu.24.04~noble" sudo apt-get install -y \ docker-ce=${DOCKER_VERSION} \ docker-ce-cli=${DOCKER_VERSION} \ containerd.io # 步骤2.7:设置Docker开机自启并启动服务 echo -e "\n===== 2.7 配置Docker服务 =====" sudo systemctl enable docker sudo systemctl enable containerd sudo systemctl start docker sudo systemctl status docker --no-pager # 步骤2.8:列出可安装的docker-compose-plugin版本 echo -e "\n===== 2.8 列出可安装的docker-compose-plugin版本 =====" apt-cache madison docker-compose-plugin | grep 2.32.1 # 步骤2.9:安装指定版本docker-compose-plugin(2.32.1) echo -e "\n===== 2.9 安装docker-compose-plugin 2.32.1 =====" COMPOSE_VERSION="2.32.1-1~ubuntu.24.04~noble" sudo apt install -y docker-compose-plugin=${COMPOSE_VERSION} # ============================================== # 阶段3:最终验证(SSH + Docker) # ============================================== echo -e "\n\n\033[32m===== 阶段3:最终验证 =====\033[0m" # SSH验证 echo -e "\n【SSH验证】" echo "SSH服务状态:$(sudo systemctl is-active ssh)" echo "SSH监听端口:$(sudo ss -tnlp | grep ssh | awk '{print $4}')" # Docker验证 echo -e "\n【Docker验证】" docker --version docker compose version sudo systemctl is-active docker sudo systemctl is-enabled docker # 最终提示 echo -e "\n\033[32m✅ 全部操作完成!\033[0m" echo -e "1. SSH远程连接:ssh 用户名@服务器IP(默认端口22)" echo -e "2. Docker验证命令:docker run --rm hello-world" echo -e "3. Docker Compose使用:docker compose up -d"
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 13:24:46

安卓离线语音识别实战:Vosk语音引擎开发全攻略

安卓离线语音识别实战:Vosk语音引擎开发全攻略 【免费下载链接】vosk-android-demo alphacep/vosk-android-demo: Vosk Android Demo 是一个演示项目,展示了如何在Android平台上使用Vosk语音识别引擎进行实时语音转文本功能。Vosk是开源的离线语音识别库…

作者头像 李华
网站建设 2026/6/20 18:47:32

R语言数据可视化神器:ggplot2完整入门指南

R语言数据可视化神器:ggplot2完整入门指南 【免费下载链接】ggplot2 An implementation of the Grammar of Graphics in R 项目地址: https://gitcode.com/gh_mirrors/gg/ggplot2 ggplot2是R语言中最受欢迎的数据可视化包,它基于图形语法理论&…

作者头像 李华
网站建设 2026/7/2 0:22:59

AFLplusplus模糊测试完整指南:快速掌握安全测试与性能调优方法

作为业界顶级的模糊测试框架,AFLplusplus在安全测试和软件质量保障领域具有不可替代的价值。然而在实际应用中,许多用户面临执行效率低下、异常分析困难、路径覆盖不足等典型挑战。本文将从实战角度出发,系统性地分享AFLplusplus模糊测试的核…

作者头像 李华
网站建设 2026/7/1 19:02:51

深度掌握浏览器自动化协议:构建高效远程调试系统的核心技术

在现代Web开发领域,浏览器自动化协议已经成为提升开发效率和质量的关键技术。这一强大的远程调试技术不仅为开发者提供了精准的调试能力,更为自动化测试、性能监控和用户体验优化奠定了坚实基础。通过深入理解其工作原理和应用模式,技术团队能…

作者头像 李华
网站建设 2026/6/30 12:32:41

LeetCode 98. 验证二叉搜索树 解题总结

目录 一、方法一:递归边界约束法(范围校验) 1. 核心思想 2. 完整实现代码 3. 重点 & 难点 二、方法二:中序遍历法(利用 BST 特性) 1. 核心思想 2. 实现代码 版本 1:递归中序遍历&…

作者头像 李华