
symfonywithswoole/swoole-bundle-cacheSwoole Bundle CI构建缓存镜像是专为Swoole Bundle项目的持续集成(CI)流程设计的工具镜像,主要用于缓存构建过程中的依赖文件、编译产物等中间结果,避免每次CI构建时重复下载和处理相同资源,从而显著提升构建效率,缩短CI流程耗时。
通过挂载缓存卷实现数据持久化,示例命令如下:
bashdocker run -d \ --name swoole-bundle-ci-cache \ -v /path/to/host/cache:/cache \ -e CACHE_KEY=swoole-bundle-v1.0 \ -e CACHE_TTL=604800 \ swoole-bundle-ci-cache:latest
参数说明:
-v /path/to/host/cache:/cache:将宿主机缓存目录挂载至容器内/cache目录,实现缓存数据持久化。-e CACHE_KEY:缓存标识,用于区分不同版本或环境的缓存(默认值:swoole-bundle-default)。-e CACHE_TTL:缓存有效期(秒),过期缓存将自动清理(默认值:604800,即7天)。在CI流程中通过docker-compose.yml定义缓存服务:
yamlversion: '3' services: ci-cache: image: swoole-bundle-ci-cache:latest volumes: - ci_cache_volume:/cache environment: - CACHE_KEY=swoole-bundle-${CI_COMMIT_BRANCH} - CACHE_TTL=86400 # 缓存有效期1天 volumes: ci_cache_volume: driver: local
在.github/workflows/ci.yml中集成缓存服务:
yamljobs: build: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Start cache service run: | docker run -d \ --name swoole-ci-cache \ -v ${{ github.workspace }}/.ci-cache:/cache \ -e CACHE_KEY=swoole-bundle-${{ github.ref_name }} \ swoole-bundle-ci-cache:latest - name: Run Swoole Bundle build run: | export CACHE_DIR=${{ github.workspace }}/.ci-cache # 构建命令中引用缓存目录,如composer install --cache-dir=$CACHE_DIR/composer
CACHE_TTL自动清理过期缓存,或手动执行docker exec swoole-bundle-ci-cache /scripts/cleanup.sh清理冗余数据。CACHE_KEY,避免旧缓存导致构建异常。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务