✅ 提到的三大功能需求:

功能

说明

1. Docker

容器化平台,用于快速部署应用(如运行容器、镜像管理)

2. 上传下载工具(如 rz / sz 或 scp / sftp)

用于在本地与远程 Linux 服务器之间传输文件

3. SSH 环境

远程连接 Linux 的基础,通常 Linux 默认已安装 OpenSSH Server


✅ 目标总结:

你想要一个 “一键脚本” 或 “步骤化一键安装” 方案,在 Linux 服务器上自动完成:

  • 安装 Docker
  • 安装文件上传下载工具(如 rz/sz或配置好 scp/sftp
  • 确保 SSH 远程登录环境可用(通常是默认安装,但检查并启动)

✅ 方案一:Shell 脚本 —— 一键安装 Docker + rz/sz + 检查 SSH(推荐)

下面是一个完整的 Bash Shell 脚本,适用于 CentOS 7 / CentOS 8 / RHEL 或 Ubuntu / Debian,可以 一键安装:Docker、rz/sz(上传下载)、并确保 SSH 可用


📜 脚本内容(复制保存为 setup_docker_upload_ssh.sh

#!/bin/bash# =============================================
# 一键安装:Docker + rz/sz(上传下载)+ 检查SSH
# 支持:CentOS 7/8/9, Ubuntu 18.04+/Debian 10+
# 使用方法:chmod +x setup_docker_upload_ssh.sh && sudo ./setup_docker_upload_ssh.sh
# =============================================set -e# ------ 检测是否为 root 用户 ------
if [ "$EUID" -ne 0 ]; thenecho "❌ 请使用 root 用户运行此脚本,或者用 sudo 执行!"exit 1
fiecho "====================================="
echo "🚀 开始一键安装 Docker + rz/sz + 检查 SSH"
echo "====================================="# --------------------------
# 1. 安装 Docker(支持 CentOS & Ubuntu)
# --------------------------
install_docker() {if command -v docker &> /dev/null; thenecho "✅ Docker 已经安装,跳过..."elseecho "🔧 开始安装 Docker..."# 检测系统类型if [ -f /etc/redhat-release ] || [ -f /etc/centos-release ]; then# --- CentOS / RHEL 系 ---echo "🐧 检测到 CentOS/RHEL 系统,使用 yum 安装 Docker..."# 卸载旧版本(如有)yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine# 安装必要依赖yum install -y yum-utils device-mapper-persistent-data lvm2# 添加 Docker 官方源yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo# 安装 Docker CE(社区版)yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# 启动 Docker 并设置开机自启systemctl start dockersystemctl enable dockerelif [ -f /etc/lsb-release ] || [ -f /etc/os-release ] && grep -q 'Ubuntu\|Debian' /etc/os-release; then# --- Ubuntu / Debian 系 ---echo "🐧 检测到 Ubuntu/Debian 系统,使用 apt 安装 Docker..."apt-get updateapt-get install -y \ca-certificates \curl \gnupg \lsb-release# 添加 Docker 官方 GPG 密钥mkdir -p /etc/apt/keyringscurl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg# 添加 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/nullapt-get updateapt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# 启动 Dockersystemctl start dockersystemctl enable dockerelseecho "❌ 不支持的 Linux 发行版,请手动安装 Docker"exit 1fi# 验证 Docker 是否安装成功if command -v docker &> /dev/null; thenecho "✅ Docker 安装成功!"docker --versionelseecho "❌ Docker 安装失败,请检查!"exit 1fifi
}# --------------------------
# 2. 安装 rz / sz(上传下载工具,依赖 lrzsz)
# --------------------------
install_rz_sz() {if command -v rz &> /dev/null; thenecho "✅ rz/sz(lrzsz)已经安装,跳过..."elseecho "🔧 开始安装 rz/sz 工具(lrzsz)..."if [ -f /etc/redhat-release ] || [ -f /etc/centos-release ]; then# CentOS / RHELyum install -y lrzszelif [ -f /etc/lsb-release ] || [ -f /etc/os-release ] && grep -q 'Ubuntu\|Debian' /etc/os-release; then# Ubuntu / Debianapt-get updateapt-get install -y lrzszelseecho "❌ 不支持的 Linux 发行版,无法自动安装 rz/sz"echo "📌 你可以手动安装 lrzsz 包"fi# 验证是否安装成功if command -v rz &> /dev/null && command -v sz &> /dev/null; thenecho "✅ rz / sz 安装成功!"echo "📤 你可以使用命令:rz (上传文件)"echo "📥 你可以使用命令:sz 文件名 (下载文件)"echo "⚠️ 注意:rz/sz 需要终端软件支持 ZMODEM(如 Xshell、SecureCRT、MobaXterm)"elseecho "❌ rz/sz 安装可能失败,请手动安装 lrzsz"fifi
}# --------------------------
# 3. 检查 SSH 服务状态
# --------------------------
check_ssh() {echo "🔍 检查 SSH 服务状态..."if systemctl list-unit-files | grep -q sshd || systemctl list-unit-files | grep -q ssh; thenif systemctl is-active --quiet sshd || systemctl is-active --quiet ssh; thenecho "✅ SSH 服务正在运行!"elseecho "⚠️ SSH 服务未运行,尝试启动..."if command -v systemctl &> /dev/null; thenif systemctl list-unit-files | grep -q sshd; thensystemctl start sshdsystemctl enable sshdelif systemctl list-unit-files | grep -q ssh; thensystemctl start sshsystemctl enable sshfiecho "✅ SSH 服务已启动!"elseecho "❌ 无法管理 SSH 服务(非 systemd 系统)"fifielseecho "⚠️ 未检测到 SSH 服务安装(通常是 openssh-server),请手动安装:"echo "🔧 CentOS/RHEL: yum install -y openssh-server && systemctl start sshd"echo "🔧 Ubuntu/Debian: apt-get install -y openssh-server && systemctl start ssh"fi
}# ====================
# 执行所有功能
# ====================
install_docker
install_rz_sz
check_sshecho "====================================="
echo "🎉 一键安装完成!"
echo "🐳 Docker、rz/sz、SSH 环境已配置"
echo "====================================="

✅ 使用方法

1. 保存脚本

将上述内容复制并保存为文件,比如:

nano setup_docker_upload_ssh.sh

然后粘贴内容,按 Ctrl + O保存,Ctrl + X退出。

2. 赋予执行权限

chmod +x setup_docker_upload_ssh.sh

3. 使用 root 权限运行

sudo ./setup_docker_upload_ssh.sh

或者直接以 root 用户运行:

./setup_docker_upload_ssh.sh


✅ 脚本功能总结

功能

是否自动完成

说明

安装 Docker

✅ 自动检测并安装最新 Docker CE

支持 CentOS / Ubuntu / Debian

安装 rz / sz

✅ 自动安装 lrzsz

用于终端上传(rz)下载(sz),需终端支持 ZMODEM

检查 SSH 状态

✅ 检查并尝试启动 sshd / ssh 服务

一般 Linux 默认已安装,确保服务运行


✅ 附加说明

🔧 如果你只是想要手动快速操作(不使用脚本)

1. 安装 Docker

  • CentOS:
curl -fsSL https://get.docker.com | bash
sudo systemctl start docker && sudo systemctl enable docker
  • Ubuntu/Debian:
sudo apt update && sudo apt install -y docker.io
sudo systemctl start docker && sudo systemctl enable docker

2. 安装 rz / sz(上传下载)

# CentOS / RHEL
sudo yum install -y lrzsz# Ubuntu / Debian
sudo apt update && sudo apt install -y lrzsz

✅ 安装后可以使用:

  • rz→ 从本地上传文件到服务器
  • sz 文件名→ 从服务器下载文件到本地

⚠️ 需要终端软件支持 ZMODEM(如 Xshell、SecureCRT、MobaXterm)

3. 确保 SSH 可用

sudo systemctl status sshd   # 或 ssh
sudo systemctl start sshd
sudo systemctl enable sshd

✅ 总结

你想要的功能

是否实现

推荐方式

一键安装 Docker

脚本自动安装 Docker CE

一键安装 rz/sz(上传下载)

脚本自动安装 lrzsz

确保 SSH 可用

脚本检查并启动 sshd

全部自动化

使用提供的 Shell 脚本 setup_docker_upload_ssh.sh


🎁 推荐:直接复制脚本运行,最方便!

📌 只需:

  1. 复制上面脚本 → 保存为 setup_docker_upload_ssh.sh
  2. chmod +x setup_docker_upload_ssh.sh
  3. sudo ./setup_docker_upload_ssh.sh