envoy实现_使用Envoy实现一键部署项目
Envoy是一个composer扩展包,它的本质作用是代替你登录远程的目标服务器(下称目标机)并执行一系列命令,它的执行环境要有事先装有php与composer,但它不仅仅能在php项目里起作用,原因是前面提到的它的本质是帮你执行命令,而这命令不只针对php的命令。因此你不仅可以把它当作部署项目的工具,甚至可以是对目标机的简单管理工具。
下面从本地机对目标机的登录到envoy的安装使用来分步介绍它。
实现本地机与目标机的ssh密钥登录
假定目标服务器是sorgo@192.168.8.8
#如果本地机的用户还没rsa密钥的那先生成
ssh-keygen -t rsa -C "your_email@example.com"
#发送密钥到目标机,并进行密码验证
ssh-copy-id sorgo@192.168.8.8
#测试是否能直接ssh登录而不再要求输入密码
ssh sorgo@192.168.8.8
安装和使用
#全局安装
composer global require laravel/envoy
#一键生成envoy执行文件模板:Envoy.blade.php
envoy init sorgo@192.168.8.8
修改Envoy.blade.php文件
{{-- 这是blade文件里的注释 --}}
{{-- web是标识这台服务器的名字 --}}
@servers(['web' => 'jeffio@116.85.48.221'])
{{-- deploy是给这个任务起的名字 --}}
@task('deploy')
cd /www/wwwroot/sifou.com
git pull origin master
composer install
@endtask
执行任务,命令格式是envoy run 任务名
envoy run deploy
以上即可一键完成:
进入指定目录
git拉取更新
安装composer包
这样一个简单的部署就完成了,极大降低了维护的操作成本。
参考
更多写操作请参考收下文档
Envoy详细文档
envoy实现_使用Envoy实现一键部署项目相关推荐
- envoy重试_具有Envoy代理的微服务模式,第二部分:超时和重试
envoy重试 该博客是系列文章的一部分,该系列文章更深入地介绍了Envoy Proxy和Istio.io ,以及它如何实现一种更优雅的连接和管理微服务的方式. 跟随我@christianposta ...
- Idea使用Alibaba Cloud Toolkit实现一键部署项目到linux环境
介绍 Alibaba Cloud Toolkit可以帮助开发者更高效地部署.测试.开发和诊断应用.Cloud Toolkit与主流IDE及阿里云其他产品无缝集成,帮助您大大简化应用部署到服务器,尤其是 ...
- 宝塔面板Java项目一键部署项目404问题
以下为总结我使用宝塔面板Java项目一键部署功能时遇到坑以及解决方案: 具体故障为:The requested resource [/demo] is not available 主要是TomCat服 ...
- 如何一键部署项目代码自动更新
my-deploy : 由nodejs写的一个自动更新工具,理论支持所有语言(php.java.c#)的项目,支持所有git仓库(bitbucket.github等). Github 效果如何? 如果 ...
- 如何一键部署项目、代码自动更新
为什么80%的码农都做不了架构师?>>> 摘要:my-deploy:由nodejs写的一个自动更新工具,理论支持所有语言(php.java.c#)的项目,支持所有git仓库(b ...
- 一键部署项目到服务器
相对于部署到 Github Page 来说,可以使用 GitHub Actions 来进行自动部署.我们自己拥有服务器的选手,就相对来说比较麻烦.一般的情况就这些: 方法 分析 FTP FTP 的速度 ...
- linux系统搭建jenkins并完成一键部署项目,解决部署项目繁琐步骤
1.去jenkis官网下载jenkins.war jenkis官网 直接点击就会下载, 或者下载本博主下载的jenkins.war 链接:百度网盘链接 提取码:k6bh 2.将jenkins.war上 ...
- envoy实现_如何利用 Envoy 的 Postgres 过滤器实现网络可观察性
作者:Christoph Pakulski 自发布版本 1.15.0 起,Envoy 代理就开始支持 Postgres 信息解码用于统计目的了.该功能为网络中发生的 Postgres 事务提供聚合视图 ...
- zabbix 时间错误_一键部署Zabbix+Grafana+Icinga+SmokePing监控系统
管理学上有一句名言,If You Can't Measure It, You Can't Manage It.对于监控的重要性我就不细说了,原先我们使用Nagios.Catti.SmokePing.I ...
最新文章
- 面向对象的三大特性(封装、继承、多态)
- [YTU]_2433( C++习题 对象数组求最大值)
- 先序序列为a、b、c、d的不同二叉树的个数是多少(卡特兰数)
- Coursera吴恩达《神经网络与深度学习》课程笔记(3)-- 神经网络基础之Python与向量化
- 40个很棒的由html5开发的网络游戏案例
- aix升级openssh_AIX5.3如何安装openssh | 学步园
- 生产环境的分布式任务调度框架如何选择?quartz、xxl-job、Elastic-Job、Saturn
- 使用expect编写脚本
- python 列表有没有顺序_python的list有顺序吗
- opencv绘制矩形框
- 搜索引擎 —海量数据搜索
- mac电脑投屏到小米盒子_电脑投屏到小米盒子
- 谷歌浏览器使用复制的功能
- html中显示框框中对勾,如何打出方框里有对勾
- java调用打印机没反应_java代码调用打印机没反应
- entity framework 新手入门篇(4)-entity framework扩展之 entityframework.extended
- 为什么程序员要会linux
- css动画走马灯5秒,用animation制作走马灯
- 嵌入式产品软件(固件)开发需要考虑的2个方面
- 言承旭签约尊尼事务所 变木村拓哉师弟攻日本
热门文章
- 数据结构与算法—二叉排序(查找)树
- 树莓派串口配置(c++)
- 来!带你认识几种最流行的Python编辑器/IDEs
- 计算机硬件系统一直延用,会计电算化辅导:计算机硬件系统
- 认真学习MySQL的事务日志-Redo日志
- 计算机工作原理与系统组成?,计算机工作原理及系统组成
- 安装目录里无法找到计算机,安装软件弹出系统找不到指定的路径提示解决方法...
- Multisim仿真—恒流源电路(一)
- Scratch-陶陶摘苹果
- word excel转pdf,pdf合并,插入页码