一键部署到服务器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_381e3919/one-click-deploy。
技能介绍
要解决的问题
在 Linux 服务器上部署开源项目时,常见的痛点是流程分散且不可复用:要么手工 git clone 再逐行编辑 docker-compose.yml,要么对着缺失的 Dockerfile 反复试错。每次换一个项目,基本都要从头走一遍。这个技能把"拉代码 → 生成 Compose → 传到服务器 → 启动容器"压缩成一次编排执行,避免每次都手写部署脚本。
核心能力与工作方式
- 双输入源:支持
--git-url从远端克隆,也支持--local-path上传本地目录,二者互斥。 - 智能 Compose 生成:若仓库自带 Compose 文件则直接使用;否则按检测到的技术栈(Node、Python、Go、静态站点)自动生成。
- 安全传输:全程使用 SSH 私钥免密登录,密码不出现在脚本中。
- 可选环境初始化:
--provision以幂等方式在裸机上安装 Docker、git、curl,并配置防火墙与用户组。
执行流程分四步:收集必填参数(host、user、key、source)→ 定位脚本 → 运行部署 → 输出六步进度日志与最终摘要(访问地址、日志查看、停止/重新部署命令)。
适用边界与注意点
- Rust 与 JVM 项目不做自动 Compose 生成,需要用户预先提供
docker-compose.yml与Dockerfile,否则脚本会明确报错并给出补救指引。 --env K=V注入的环境变量会写入服务器端.env文件,该文件按惯例不入 Git,但仍需自行管理敏感凭据。- 云平台安全组与操作系统防火墙是两层独立机制,技能只负责后者,端口放行仍需在云控制台确认。
- 重复执行会重新拉取代码并重建容器,属于安全可重入操作。
使用场景
- 拿到开源项目 Git 地址,需要一条命令部署到自己的 Linux 服务器验证效果
- 本地开发完成,要把文件夹上传到远程服务器并自动生成容器化部署
- 服务器是新机器,需要先安装 Docker 等基础环境再部署项目
- 团队需要可重复、统一的容器化发布流程,避免每次手写 Compose 文件
适合人员
- 独立开发者,需要把开源项目快速部署到远程服务器验证功能
- 后端工程师,负责把本地项目容器化并发布到 Linux 主机
- DevOps 工程师,需要在裸机上完成环境初始化和项目部署
- 技术负责人,希望团队使用统一的自动化部署流程减少手工操作