扫码阅读
手机扫码阅读
GitHub Actions 真香系列之scp和ssh
363 2024-01-25
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
文章来源:
鲁飞
扫码关注公众号
概述
尽管 Kubernetes (k8s) 被用于服务部署,但仍有业务依赖传统 LNMP(Linux, Nginx, MySQL, PHP)部署方式。本文讨论在不同环境下部署 Web 站点的问题,其中包括测试环境的持续部署和生产环境的上线流程。
测试环境
测试环境兼作开发环境,区分本地和云数据库。本地开发使用 PhpStorm 的 FTP 功能上传代码,而其他开发者提交代码后,使用 webhook 自动进行代码拉取。这里的 webhook 实现依赖于作者开发的 sy-records/git-deploy 工具,该工具支持多个 Git 平台,并需要 PHP 和 Swoole 环境。如果没有这些环境,还可以使用 swoole-cli 启动。
生产环境
生产环境部署前需要打包操作,使用 GitHub Actions 实现。最初尝试使用公私钥进行代码拷贝和解压,但未成功。后来同事推荐使用 ssh-action 执行远程 SSH 命令。虽然这个 action 能通过密码或私钥远程操作,作者最终没采用它。进一步探索后,发现 scp-action 更符合需求,用以将代码包复制到下载服务器,再从生产环境下载并解压部署。部署简化为在服务器上执行一个 PHP 脚本来引入下载链接,尽管也可以基于 ssh-action 直接操作,但由于其他限制,仍选择手动执行。
想要了解更多内容?
文章来源:
鲁飞
扫码关注公众号
鲁飞的其他文章
解决 macOS 下 PostgreSQL 服务启动失败
使用 brew 安装的 PostgreSQL 服务,不知道什么时候升级了版本...
为 Docsify 自动生成 RSS 订阅
为Docsify等静态站点自动生成RSS订阅
Swoole v4.6 版本新特性之 SNI 支持
Swoole 在 v4.6.0 版本中对 SNI 进行了支持,这篇文章就对这个新特性进行一些演示和说明。
通过微信开放平台授权获取公众号文章
如果想要实现一个将公众号文章搬运到某个社区中去发布的功能,除了使用爬虫等方法,还可以通过微信开放平台授权,调用官方接口来获取公众号文章。
如何获取指定CSDN博主的全部文章信息
本文说明了爬取 CSDN 作者文章的方法。
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设
白皮书上线