配合宝塔,设置git自动拉取

本文介绍了如何使用bash脚本定时执行git pull,并结合gitweb钩子和宝塔webhook实现网站实时更新。还详细讲解了在宝塔中配置webhook,包括秘钥使用和代码片段。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

配合自动任务如下:

         #!/bin/bash 
        #crontab -e
        #* * * * * /web/www/bbc/crontab.sh  > /dev/null
        step=5 #间隔的秒数,不能大于60  
  
        for (( i = 0; i < 60; i=(i+step) )); do  
            cd /data2/official-sites
            git pull 
            sleep $step  
            done  
        exit 0

使用gitweb钩子

        使用推送事件,设置一个web钩子

使用宝塔webhook

        1.查看秘钥

        2.复制请求地址

        3.把秘钥放入请求地址钩子参数中

        4.把如下代码放入webhook中

#!/bin/bash

echo ""

#输出当前时间

date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"

echo "Start"

#判断宝塔WebHook参数是否存在

#if [ ! -n "$1" ];

#then

#          echo "param参数错误"

#          echo "End"

#          exit

#fi

#git项目路径

gitPath="/www/wwwroot/dev/shante/"

#git 网址

#gitHttp="$1"

#if [ $1 -eq "999" ]

#then

         

          

#          echo "End"

#          exit

#fi

echo "Web站点路径:$gitPath"

echo "Git:$gitHttp"

#判断项目路径是否存在

if [ -d "$gitPath" ]; then

        cd $gitPath

        #判断是否存在git目录

        #拉取最新的项目文件

        git pull &2>1

        #设置目录权限

        #chown -R www:www $gitPath

        echo "End"

        exit

else

        echo "该项目路径不存在"

        echo "End"

        exit

fi

 

### 宝塔面板与 Docker 的关系及使用方法 #### 什么是宝塔面板宝塔面板是一款基于 Web 的服务器管理工具,提供了直观的图形化界面,使得用户可以轻松完成网站部署、数据库管理和服务器配置等工作[^3]。它支持多种操作系统,并集成了常见的服务组件(如 Nginx、Apache、MySQL 和 PHP),非常适合初学者快速搭建和维护站点。 #### 什么是 Docker? Docker 是一种容器虚拟化技术,允许开发者将应用程序及其依赖打包成独立的镜像文件,在任何环境中运行而无需担心兼容性问题[^1]。通过这种方式,它可以实现更高效的资源利用并简化应用迁移过程。 #### 如何在宝塔面板中集成或操作 Docker? 虽然宝塔本身并非专为 Docker 设计,但它可以通过插件形式或者命令行方式间接支持 Docker 功能: 1. **安装 Docker 插件** 如果您的主机已启用 Docker 支持,则可以直接前往宝塔面板的应用商店搜索 “Docker”,找到对应的插件进行安装。这一步通常会自动下载必要的驱动程序和服务端口设置。 2. **手动创建容器实例** 当成功加载上述插件之后,您可以在新页面里看到有关启动/停止现有容器选项卡;也可以点击新建按钮来自定义构建新的项目模板——比如指定基础映像名称、版本号以及挂载路径等参数[^2]。 3. **优化存储空间分配** 默认情况下,某些云平台可能仅提供有限大小作为根分区供整个系统共享使用 (例如8GB),因此当尝试大型官方仓库中的镜像时容易遇到磁盘不足错误提示。此时需调整数据目录位置至其他可用设备上: ```bash sudo service docker stop sudo mv /var/lib/docker /mnt/newdisk/ ln -s /mnt/newdisk/docker /var/lib/docker sudo service docker start ``` 以上步骤能够有效缓解因初始规划不当而导致的功能受限情况发生。 --- ### 示例代码片段:修改默认日志驱动以节省硬盘占用率 对于长期运行的服务而言,默认 JSON 文件型记录机制可能会迅速消耗掉大量物理内存容量。为此推荐切换到 journald 类型或其他轻量级方案上来改善这一状况: ```jsonnet { "log-driver": "journald", "log-opts": { "max-size": "10m", "max-file": "3" } } ``` 将其保存为 `/etc/docker/daemon.json` 后重启守护进程即可生效。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值