
cappuc/gitlab-ci-laravel该镜像为Laravel应用的测试场景提供专用PHP环境,集成了测试过程中常用的工具链,无需手动配置测试依赖,可直接用于Laravel应用的单元测试、集成测试等各类测试任务,简化测试环境搭建流程。
php artisan test命令执行测试用例。laravel/framework测试组件、orchestra/testbench等),简化测试用例编写。通过以下命令快速启动容器并执行测试:
bash# 拉取镜像(假设镜像名为laravel-test-php) docker pull laravel-test-php # 挂载项目目录并运行测试命令 docker run --rm \ -v $(pwd):/app \ # 挂载本地Laravel项目目录到容器/app -w /app \ # 设置工作目录为/app laravel-test-php \ # 镜像名称 php artisan test # 执行Laravel测试命令
创建docker-compose.test.yml文件,定义测试服务:
yamlversion: '3.8' services: test: image: laravel-test-php volumes: - ./:/app # 挂载项目代码 - vendor_cache:/app/vendor # 缓存依赖,加速后续测试 working_dir: /app command: php artisan test # 默认执行测试命令 environment: - APP_ENV=testing # 设置Laravel环境为测试环境 - DB_CONNECTION=sqlite # 测试数据库连接(示例为SQLite) - DB_DATABASE=/app/database/testing.sqlite # SQLite数据库路径 volumes: vendor_cache: # 持久化依赖缓存卷
启动测试服务:
bashdocker-compose -f docker-compose.test.yml up test
可通过环境变量自定义容器配置:
| 环境变量 | 说明 | 默认值 |
|---|---|---|
PHP_VERSION | PHP版本(如8.1、8.2,需镜像支持) | 8.2 |
TZ | 容器时区 | Asia/Shanghai |
COMPOSER_ALLOW_SUPERUSER | 允许Composer以root用户运行 | true |
LARAVEL_TEST_DB_CONNECTION | 测试数据库连接方式(mysql/pgsql/sqlite) | sqlite |
-v $(pwd):/app将本地Laravel项目挂载到容器,确保容器可访问最新代码。-v vendor_cache:/app/vendor挂载依赖缓存卷,避免每次运行重新安装Composer依赖,提升测试效率。-v $(pwd)/tests/reports:/app/tests/reports)。

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务