基于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/

再见

相关推荐
AiTEN_Robot4 小时前
技术赋能降本:机器人叉车在物流场景的成本优化实践
机器人·自动化·制造
4***V20210 小时前
PHP在微服务通信中的消息队列
开发语言·微服务·php
亿坊电商10 小时前
PHP框架 vs 原生开发:移动应用后端开发实战对比!
开发语言·php
Mr_sun.10 小时前
Day08——ElasticSearch-基础
大数据·elasticsearch·jenkins
n***293212 小时前
PHP安全编程实践
开发语言·安全·php
b***748813 小时前
PHP在电子商务系统中的构建
开发语言·php
BingoGo13 小时前
PHP8.6 新的 RFC 提案 Context Managers 优雅管理资源生命周期
后端·php
JaguarJack14 小时前
PHP8.6 新的 RFC 提案 Context Managers 优雅管理资源生命周期
php·服务端
月下的郁王子14 小时前
进阶学习 PHP 中的二进制和位运算
android·学习·php
优质&青年17 小时前
【Operator prometheus监控系列三---业务监控】
运维·云原生·kubernetes·自动化·prometheus