基于Jenkins自动化部署PHP环境---基于rsync部署

基于基于Jenkins自动打包并部署Tomcat环境_学习新鲜事物的博客-CSDN博客环境

准备git仓库

root@git \~\]# su - git 上一次登录:五 8月 25 15:09:12 CST 2023从 192.168.50.53pts/2 上 \[git@git \~\]$ mkdir php.git \[git@git \~\]$ cd php.git/ \[git@git php.git\]$ git --bare init 初始化空的 Git 版本库于 /home/git/php.git/ \[git@git php.git\]$ exit 登出

上传代码到仓库

root@git \~\]# git clone git@192.168.50.51:/home/git/php.git/ 正克隆到 'php'... git@192.168.50.51's password: warning: 您似乎克隆了一个空版本库。 \[root@git \~\]# cd php/ \[root@git php\]# cat \<\< EOF \> index.php \> \ phpinfo(); \> ?\> \> EOF \[root@git php\]# git add . \[root@git php\]# git commit -m "all" \[master(根提交) a251610\] all 1 file changed, 3 insertions(+) create mode 100644 index.php \[root@git php\]# git push origin master git@192.168.50.51's password: Counting objects: 3, done. Writing objects: 100% (3/3), 218 bytes \| 0 bytes/s, done. Total 3 (delta 0), reused 0 (delta 0) To git@192.168.50.51:/home/git/php.git/ \* \[new branch\] master -\> master

部署web主机环境

root@tomcat \~\]# yum install -y httpd mariadb-server mariadb mariadb-devel php php-mbstring php-mysql php-bcmath php-gd php-xmlrpc php-ldap php-xml libevent libevent-devel net-snmp net-snmp-devel libxml2 libxml2-devel ntpdate \[root@tomcat \~\]# yum -y install rsync \[root@tomcat \~\]# systemctl start httpd \[root@tomcat \~\]# systemctl start mariadb ![](https://file.jishuzhan.net/article/1696548567486828546/1da0cc93c4334190b257029a9cbaa1aa.png)

Jenkins主机将密钥发布到web主机

root@jenkins \~\]# su -s /bin/bash jenkins bash-4.2$ ssh-keygen bash-4.2$ ssh-copy-id root@192.168.50.54 \[root@jemkins \~\]# su -s /bin/bash jenkins bash-4.2$ ssh-copy-id root@192.168.50.54 /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/var/lib/jenkins/.ssh/id_rsa.pub" The authenticity of host '192.168.50.54 (192.168.50.54)' can't be established. ECDSA key fingerprint is SHA256:QTpNCUOIFG1aAs7OSxPHKn0MlNEnLbS7SP/V1xdN8Cg. ECDSA key fingerprint is MD5:f8:df:e8:5f:ae:af:56:a8:e9:0c:76:13:8b:0e:07:4c. Are you sure you want to continue connecting (yes/no)? yes /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys root@192.168.50.54's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'root@192.168.50.54'" and check to make sure that only the key(s) you wanted were added.

基于rsync部署

创建一个Freestyle project

git@192.618.50.51:/home/git/php.git

rsync -avz --delete * root@192.168.50.54:/var/www/html/

root@tomcat \~\]# ls /var/www/html/ index.php \[root@tomcat \~\]# cat /var/www/html/index.php \ ![](https://file.jishuzhan.net/article/1696548567486828546/fe1eb024b68c4a18b21cc148812e5c29.png) ******基于ansible部署****** \[root@jemkins \~\]# yum -y install ansible > \[root@jemkins \~\]# vim /etc/ansible/hosts > > \[webservers

192.168.50.54

修改jenkins运行用户

root@jemkins \~\]# vim /usr/lib/systemd/system/jenkins.service 34 User=root 35 Group=root 一般在/etc/init.d/jenkins或/usr/lib/systemd/system/jenkins.service。根据不同的Linux发行版可能略有不同,请根据实际情况进行查找。

添加Ansible插件

创建php-ansible

做好ssh密钥通联

src=${WORKSPACE} dest=/var/www/html rsync_opts=--exclude=.git

访问http://192.168.50.54/php-ansbile/

再见

相关推荐
H5css�海秀5 小时前
今天是自学大模型的第一天(sanjose)
后端·python·node.js·php
xingxin326 小时前
日志文件分析溯源(连接WebShell的IP地址)实验报告
安全·web安全·网络安全·php·文件上传
LegendNoTitle6 小时前
计算机三级等级考试 网络技术 选择题考点详细梳理
服务器·前端·经验分享·笔记·php
左手厨刀右手茼蒿8 小时前
Flutter for OpenHarmony: Flutter 三方库 shamsi_date 助力鸿蒙应用精准适配波斯历法(中东出海必备)
android·flutter·ui·华为·自动化·harmonyos
人工干智能12 小时前
用AI写Fusion 360脚本:个人版也能免费玩自动化
运维·人工智能·自动化·fusion
赛博云推-Twitter热门霸屏工具12 小时前
社交媒体自动化营销趋势分析:未来3年怎么玩(2026-2029)
运维·自动化·媒体
Ciel_752114 小时前
OpenClaw 深度进阶:记忆系统、多智能体架构与自动化调度全解析
运维·自动化
三七吃山漆14 小时前
[红明谷CTF 2021]write_shell
php·ctf·[红明谷ctf 2021]
胡摩西14 小时前
制造业室内精准定位:毫米级技术如何破解工厂自动化“最后一厘米”难题
人工智能·自动化·slam·室内定位·roomaps
ZHOUPUYU16 小时前
PHP与WebSocket实时通信的原理到生产级应用
开发语言·html·php