You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Bitbucket Pipeline中的‘could not find driver’部署错误?

解决Bitbucket Pipelines中Deployer执行theme:compile时的数据库驱动缺失问题
  • 确认扩展是否成功加载
    在pipelines配置的扩展安装步骤后,添加一行php -m | grep pdo,运行流水线查看输出是否包含pdo_mysql。如果未出现,说明扩展安装方式有误:

    • 若使用Alpine基础的composer镜像,安装命令应为apk add php82-pdo_mysql,部分镜像需手动启用扩展,追加docker-php-ext-enable pdo_mysql
    • 若为Debian/Ubuntu基础镜像,安装命令用apt-get install -y php8.2-mysql,该包会自动包含并启用pdo_mysql
  • 检查PHP配置是否加载驱动
    执行php -i | grep "pdo_mysql",确认输出中存在pdo_mysql => enabled。若未启用,可在pipelines中手动添加配置:

    - echo "extension=pdo_mysql.so" >> /usr/local/etc/php/conf.d/pdo_mysql.ini
    
  • 验证数据库连接配置
    确保Deployer或应用的数据库连接参数中,驱动指定为pdo_mysql,比如DATABASE_URL格式应为mysql://用户名:密码@主机:端口/数据库名,避免误用mysql等其他驱动标识。

  • 确认Deployer执行环境的一致性
    在Deployer任务中添加which php和php -m命令,检查执行theme:compile时使用的PHP环境是否已加载pdo_mysql扩展,避免因环境不一致导致扩展失效。

  • 更换更完整的PHP镜像
    若composer镜像的PHP环境过于精简,可改用官方php:8.2-cli镜像,自行安装composer以获得更可控的扩展环境:

    image: php:8.2-cli
    pipelines:
      default:
        - step:
            script:
              - apt-get update && apt-get install -y git unzip
              - curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
              - docker-php-ext-install pdo pdo_mysql
              # 后续部署命令
    

内容的提问来源于stack exchange,提问作者Gunnarius

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 21:55:02