让 Agent 接管远程部署,可行吗?我的一些实验 ------实习收获3
- 内容介绍
- 文章标签
- 相关推荐
本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:
- 我的帖子已经打上 开源推广 标签: 是
- 我的开源项目完整开源,无未开源部分: 是
- 我的开源项目已链接认可 LINUX DO 社区: 是
- 我帖子内的项目介绍,AI生成、润色内容部分已截图发出: 是
- 以上选择我承诺是永久有效的,接受社区和佬友监督: 是
以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出
初步想法,提供一个思路,欢迎大家讨论
背景:
最近我在为一些小需求调整代码,然而公司没有自动化部署机制,每改一点代码都需要手动去打包上传服务器,并进行compose或者去服务器拉取重启容器,非常麻烦且高度重复。耽误我摸鱼 想起之前通过PowerShell直接连接远程的服务器测试Python脚本,Windows的服务启动也是靠的是AI写的脚本。那我为什么不直接让Agent编写一个脚本,实现自动化的部署?
做法:
最开始很简单就是使用Agent给它服务器相关的信息和我是如何部署的,让它自主编写PowerShell脚本,目的是:编写一个一键完成远端部署的脚本。这个想法是可行的,成功完成过几次部署。
但之后遇到了一些问题: 当部署出现错误的时候,脚本无法处理还需要人去处理错误。 这对于我来说可太难受了,自动不完全等于完全不自动。我就想:可以直接让Agent通过命令行连接到服务器,让它自主的处理各种错误异常。于是我就开始了实验,发现确实可行,部署基本可以实现自动化了。
问题:
1.安全问题,无法保证Agent不去执行什么‘rm -rf /*’之类的命令。
2.如果出现一些异常情况,Agent没有人工快。
3.如果没有明确回滚方案,自动化反而可能扩大事故
结论:
1.初始化:让Agent来编写部署脚本,脚本要保证安全和较为详细的日志记录,最重要的是可用。(编写的时候可以让它连接到服务器,人工确定每条命令的安全)。
2.运行部署:让Agent运行脚本,通过脚本的反馈来进行操作,如果正常就直接输出,出错就需要人工逐步确认。
2.运行部署:让 Agent 运行脚本,通过脚本的反馈来进行操作,如果正常就直接输出,出错就需要人工逐步确认。
3.最后还是偶尔半自动化,无法完全自动化
附录:
本人使用的编写脚本和运行脚本的Skill,目前就在Windows的Powershell下部署过Java(上传Jar包,重建容器)和Python程序(git拉取,重启容器)。
建议参考此Skill,不建议直接照搬。
Github:remote-compose-deploy-skill
实习总结:
-
让AI能输出规范格式—–实习收获1
-
流程智能体高并发雪崩问题排查—-实习收获2
-
Agent接管部署 ——实习收获3
--【壹】--:
考虑用现成的cicd工具吧,比如github action或者drone,因为发版流程说白了就是一套固定的,没有那么多异常情况,比如你要部署,你保证代码本地编译通过,你就可以用前置hook做一下校验,具体的打包、镜像、发布等流程放到流水线里就好了
--【贰】--:
别后面了,花一上午时间够够的,很简单,drone的话企业用比较合适,githubaction个人开发比较合适
--【叁】--:
是这样的,如果不考虑异常情况,也可以直接运行AI写的脚本完成部署。这个方法只是个过渡,最后肯定还是自动化的CI/CD。
本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:
- 我的帖子已经打上 开源推广 标签: 是
- 我的开源项目完整开源,无未开源部分: 是
- 我的开源项目已链接认可 LINUX DO 社区: 是
- 我帖子内的项目介绍,AI生成、润色内容部分已截图发出: 是
- 以上选择我承诺是永久有效的,接受社区和佬友监督: 是
以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出
初步想法,提供一个思路,欢迎大家讨论
背景:
最近我在为一些小需求调整代码,然而公司没有自动化部署机制,每改一点代码都需要手动去打包上传服务器,并进行compose或者去服务器拉取重启容器,非常麻烦且高度重复。耽误我摸鱼 想起之前通过PowerShell直接连接远程的服务器测试Python脚本,Windows的服务启动也是靠的是AI写的脚本。那我为什么不直接让Agent编写一个脚本,实现自动化的部署?
做法:
最开始很简单就是使用Agent给它服务器相关的信息和我是如何部署的,让它自主编写PowerShell脚本,目的是:编写一个一键完成远端部署的脚本。这个想法是可行的,成功完成过几次部署。
但之后遇到了一些问题: 当部署出现错误的时候,脚本无法处理还需要人去处理错误。 这对于我来说可太难受了,自动不完全等于完全不自动。我就想:可以直接让Agent通过命令行连接到服务器,让它自主的处理各种错误异常。于是我就开始了实验,发现确实可行,部署基本可以实现自动化了。
问题:
1.安全问题,无法保证Agent不去执行什么‘rm -rf /*’之类的命令。
2.如果出现一些异常情况,Agent没有人工快。
3.如果没有明确回滚方案,自动化反而可能扩大事故
结论:
1.初始化:让Agent来编写部署脚本,脚本要保证安全和较为详细的日志记录,最重要的是可用。(编写的时候可以让它连接到服务器,人工确定每条命令的安全)。
2.运行部署:让Agent运行脚本,通过脚本的反馈来进行操作,如果正常就直接输出,出错就需要人工逐步确认。
2.运行部署:让 Agent 运行脚本,通过脚本的反馈来进行操作,如果正常就直接输出,出错就需要人工逐步确认。
3.最后还是偶尔半自动化,无法完全自动化
附录:
本人使用的编写脚本和运行脚本的Skill,目前就在Windows的Powershell下部署过Java(上传Jar包,重建容器)和Python程序(git拉取,重启容器)。
建议参考此Skill,不建议直接照搬。
Github:remote-compose-deploy-skill
实习总结:
-
让AI能输出规范格式—–实习收获1
-
流程智能体高并发雪崩问题排查—-实习收获2
-
Agent接管部署 ——实习收获3
--【壹】--:
考虑用现成的cicd工具吧,比如github action或者drone,因为发版流程说白了就是一套固定的,没有那么多异常情况,比如你要部署,你保证代码本地编译通过,你就可以用前置hook做一下校验,具体的打包、镜像、发布等流程放到流水线里就好了
--【贰】--:
别后面了,花一上午时间够够的,很简单,drone的话企业用比较合适,githubaction个人开发比较合适
--【叁】--:
是这样的,如果不考虑异常情况,也可以直接运行AI写的脚本完成部署。这个方法只是个过渡,最后肯定还是自动化的CI/CD。

