溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用php和nginx實現自動化部署腳本?

發(fā)布時間:2020-05-23 14:34:38 來源:億速云 閱讀:240 作者:Leah 欄目:編程語言

 在目標機器創(chuàng)建deploy用戶(以deploy用戶為例子)

添加用戶并創(chuàng)建密碼

/usr/sbin/groupadd deploy
/usr/sbin/useradd -g deploy -s /bin/bash deploy
passwd deploy

輸入兩次密碼,回車確認

附加: 切換用戶命令 su - deply

使用新增用戶免密使用sudo命令

添加剛才的用戶deploy到sudoers里面,進行免密使用sudo命令

visudo //修改/etc/sudoers的內容,或vim or vi 命令
vim /etc/sudoers
## Allow root to run any commands anywhere
# 設置xxxx組下面的用戶使用sudo不需要輸入密碼
root ALL=(ALL) ALL
 
deploy ALL=(ALL) ALL # 新添加這一行
%deploy ALL=(ALL) NOPASSWD: ALL # 新添加這一行

到這里已經可以正常在exec中使用sudo here is command來執(zhí)行命令了,而無需輸入密碼

目標機器修改php-fpm進程為deploy用戶運行

以centos7.5為例子

vim /etc/php-fpm.d/www.conf
# 修改用戶和用戶組為deploy
user = deploy
group = deploy
 
# 如果存在listen用戶和用戶組,同樣修改,不存在可以忽略
;listen.owner = deploy
;listen.group = deploy

重啟php-fpm服務

service php-fpm restart

目標機器修改nginx為進程為deploy用戶運行

以centos7.5為例子

vim /etc/nginx/nginx.conf

頭部新增 (如果存在則修改)

user deploy;

重啟nginx

nginx -t
service nginx restart

至此,可以使用php 腳本執(zhí)行命令,并拉取git代碼,同時,注意PHP腳本所屬用戶,可以修復文件用戶歸屬:

# 批量修改 filedir 目錄所屬用戶為deploy
sudo chown -R deploy:deploy filedir

PHP拉取git代碼更新例子

 $output = shell_exec('cd ~/www/test && git pull origin master');
 var_dump(output);

以上就是php+nginx實現自動化部署腳本(簡單版)的詳細內容,更多請關注億速云其它相關文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI