使用rsync工具构建php项目管理平台,rsync项目管理

对于phper来说部署项目和更新项目是很方便的,只要直接将写好的项目覆盖到项目的根目录就可以啦。但是平时项目开发的时候肯定不是只部署一个环境,一般是三套环境(开发环境、测试环境、生产环境),我们每次在开发环境开发完之后要将项目更新到测试环境和生产环境上,如果每次更新的话都是将项目复制然后手动的去覆盖到项目的根目录下的话就太麻烦啦,而且也容易出错所以我们应该有一套项目管理系统来方便的管理项目的更新迭代,大致结构如下:

画的不好但是意思是对的,这样的话就可以通过一个脚本文件直接更新代码啦,更重要的是我们可以通过php中的 exec() 函数来操作脚本,这意味着我们可以使用php来开发这个项目管理平台,今天只说如何配置rsync。

实验环境:

docker(ubuntu镜像)实例化两台虚拟器

在两台虚拟机上都安装好 rsync 工具,rsync 使用分两种情况,一种是客户端使用(直接执行 rsync 相关命令)另一种是服务器端使用(以daemon模式执行)

配置 rsync 服务端

首先要在 `/etc` 目录下手动添加个 rsyncd.conf 文件并填写相关配置,配置选项解释如下:

port=837 #监听端口默认 873

log file=/var/log/rsync.log #rsync日志

pid file=/var/run/rsync.pid #rsync运行时生成的pid存放目录

[abc] #模块名称

path=/var/www/html #模块对应的目录

use chroot=yes #是否限定为模块默认目录

max nonections=4 #指定最大可以连接的客户端数

read only=no #yes 为改模块内容只允许读,no 为该模块允许读写

list=yes #是否允许 使用 `rsync ip地址::` 列出模块名

uid=root #以哪个用户的身份来传输

gid=root #以哪个组的身份来传输

auth users=root #指定验证用户名,如果不设置则可以不用密码进行传输

secrets file=/etc/rsync.passwd #指定用户名和密码的存放文件 注:文件需要以 "用户名:密码"的形式存储 并且需要设置权限 chmod 600 rsync.passwd

从客户端读取服务器端文件

rsync --port=837 -avz root@192.168.99.100::abc /myweb

这时会将服务端 /var/www/html 目录下的文件同步到 客户端的 /web 目录下

从客户端推送文件到服务端

rsync --port=837 -avzH /myweb/ root@192.168.99.100::abc

这时会将客户端的 /web 目录下的文件同步到 服务端 /var/www/html 目录下

对于 rsync 命令各个选项的含义 建议看下这篇文章吧,这哥们写的翻译的挺详细的  @骏马金龙man rsync翻译(rsync命令中文手册)

http://www.dengb.com/PHPjc/1349367.htmlwww.dengb.comtruehttp://www.dengb.com/PHPjc/1349367.htmlTechArticle使用rsync工具构建php项目管理平台,rsync项目管理 对于phper来说部署项目和更新项目是很方便的,只要直接将写好的项目覆盖到项目的根目录...

php执行rsync,使用rsync工具构建php项目管理平台,rsync项目管理相关推荐

  1. 使用rsync工具构建php项目管理平台

    对于phper来说部署项目和更新项目是很方便的,只要直接将写好的项目覆盖到项目的根目录就可以啦.但是平时项目开发的时候肯定不是只部署一个环境,一般是三套环境(开发环境.测试环境.生产环境),我们每次在 ...

  2. rsync - 远程同步工具

    一直没有对这个命令太有深入的理解 简介 rsync 即 remote sync,一个远程与本地文件同步工具.rsync 使用的算法能够最小化所需复制的数据,因为它只移动那些修改了的文件. rsync ...

  3. linux运维笔记:Rsync数据同步工具

    linux运维笔记:Rsync数据同步工具 1-Rsync简介 Rsync英文全称是Remote synchronization,Rsync具有可以使本地和远程两台主机之间的数据快速复制和同步镜像.远 ...

  4. 【基础】:Rsync数据同步工具

    第二十一节 Rsync数据同步工具 1.1 Rsync介绍 1.1.1 什么是Rsync? 1.1.2 Rsync简介 1.3 Rsync的特性 1.1.4 Rsync的企业工作场景说明 1.2 Rs ...

  5. Linux实战教学笔记21:Rsync数据同步工具

    原文地址:https://www.cnblogs.com/chensiqiqi/p/6514315.html 目录 第二十一节 Rsync数据同步工具 1.1 Rsync介绍 1.1.1 什么是Rsy ...

  6. linux有哪些实时同步工具,rsync文件同步工具常见模式有哪些?linux系统

    互联网时代发展迅速,Linux运维技术的需求更多推进不少.市场对于Linux运维人才的需求也在逐渐加大.Linux行业崛起,在云计算大环境下,市场上对高级运维人员的需求将越来越大.文件同步工具rsyn ...

  7. Rsync 数据备份工具

    Rsync数据备份工具 1.Rsync简介 Rsync是一款开源的数据备份工具,可以用于不同主机之间同步传输数据,可以实现全量备份和增量备份. Rsync监听端口: Rsync工具默认运行在TCP的8 ...

  8. 最详细的vue-cli工具构建vue项目教程

    最详细的vue-cli工具构建VUE项目教程 一.安装node环境 1. 进入node 官网下载安装 网址 https://nodejs.org/zh-cn/ 2. 默认安装(安装在C盘) 3. 安装 ...

  9. Rsync(远程同步):Linux中Rsync命令的10个实际示例

    转载来源:https://www.tecmint.com/rsync-local-remote-file-synchronization-commands/ Rsync的(远程同步)是最常用的命令复制 ...

最新文章

  1. echarts数据变了不重新渲染,以及重新渲染了前后数据会重叠渲染的问题
  2. 织梦根目录下面404页面,主页能正常运行404页面,切换至栏目页404页面内的图片不能正常显示,解决...
  3. 安装Discuz!论坛
  4. 十七、Pytorch的安装和使用
  5. I.MX6 boot from Micro SD
  6. 想读Spring源码?先从这篇「 极简教程」开始吧...
  7. PHP可不可以调用opengl库,opengl,_苹果能不能用 OpenGL 3 或以上写代码?,opengl - phpStudy...
  8. linux如何运行windows游戏,如何在Linux上运行Windows应用程序和游戏 互联网技术圈 互联网技术圈...
  9. CCF201709-3 JSON查询(100分)【文本处理】
  10. ClassLoader类加载器,以及双亲委派模型
  11. html如何导入字体样式表,导入html字体及其样式变体?
  12. 深度学习:从零开始构造一个识别猫狗图片的卷积网络
  13. 三目表达式 java_Java 三目运算符表达式的一些问题
  14. 涨知识:面试字节跳动Java研发岗,经验分享
  15. 【云计算OpenStack-OpenStack Queens版本-遇错】基于OpenStack的云计算环境搭建
  16. 英语语法笔记——特殊句型(六)
  17. oracle 11g gateway 连接sqlserver 2005 ,ORA-28545解决
  18. 数据结构实验教程-第一套
  19. C#获取同花顺,问财V(hexin-v)值
  20. 如何将本地的项目上传到git

热门文章

  1. pww区域连接特征提取算法
  2. 华为RH8100v3巡检
  3. linux mysql 二进制包_mysql5.7 二进制包安装
  4. zip的用法python_Python学习之zip函数的用法
  5. python课件_讲座直播 | Python在线课堂第二周
  6. Python之装饰器入门
  7. 搜寻文件下包含某个字符串的文件
  8. 四. 常见H.264视频编解码器(X264和JM)及参考软件JM的下载与编解码
  9. linux服务器文件后缀名,linux服务器备份网站程序并下载到本地(自动)
  10. 两张照片重叠处半透明_美人计 | 林允儿的发型可真好看!拿着照片去找发型师吧...