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

GitLab CI指定php:7.4镜像 本地gitlab-runner exec shell执行报PHP版本不符

问题原因

你遇到的PHP版本不匹配、image配置被忽略的问题,核心是gitlab-runner exec指定的执行器类型和CI配置逻辑不匹配:

  • 你执行测试命令时指定了shell执行器:gitlab-runner exec shell unit_test,该执行器不会创建独立的隔离运行环境,会直接在你当前的macOS本地系统环境执行所有CI脚本,检测到的7.3.29就是你本地设备默认安装的PHP版本。
  • .gitlab-ci.yml里的image字段仅对Docker类执行器生效(包括docker、docker+machine、docker-ssh等执行器),shell执行器会直接忽略该配置,不会拉取php:7.4镜像创建运行环境。

修复方案

如果要在本地验证CI配置效果,有两种可行方式:

  1. 改用docker执行器运行测试,执行前需要确保本地已经安装并启动了Docker服务:
gitlab-runner exec docker unit_test

执行器会自动拉取php:7.4镜像创建容器运行任务,完全符合CI配置要求。
2. 继续使用shell执行器的话,需要将本地macOS环境的默认PHP版本切换到7.4,满足composer依赖要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 21:27:05