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

> <?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

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

<?php

phpinfo();

?>

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

再见

相关推荐
慧都小项7 小时前
从原理图到 PCB 制造数据:设计交付的 4 个核对关口
程序人生·自动化·pcb工艺·电子设计
qq_284274058 小时前
机械原理笔记:平面机构自由度计算(复合铰链、局部自由度、虚约束)与四杆机构入门(含考点)
笔记·学习·平面·自动化·制造
优橙教育9 小时前
零基础学AI应用开发要多久?3个月能到什么水平
服务器·开发语言·网络·php
qq_284274059 小时前
数控铣床与加工中心笔记:铣刀与刀柄系统、G54试切对刀、镜像加工指令、孔加工工艺(钻扩铰镗)与固定循环G73/G83/G81/G76/G87/G84
笔记·学习·自动化·制造
科技研学社12 小时前
精度决胜品质:羽绒服缝制工艺标准与自动化精度对标解析
运维·自动化
乐橙开放平台12 小时前
智慧连锁客流检测和离岗检测怎么对接
大数据·人工智能·笔记·物联网·自动化·音视频·智能家居
黑箭科技12 小时前
你的AI Agent在生产环境“裸奔“了多久?用500行Python代码搭建完整的驾驭工程体系
自动化·技术
郭萌69613 小时前
多商户平台的优惠券,真正的设计对象是「适用范围」而不是券模板
php
额额额对了13 小时前
嵌入式 Linux 启动程序文件
开发语言·嵌入式硬件·php
v:ychya201814 小时前
独立站外贸建站公司怎么选?建站就要建营销型网站
前端·php