| Docker daemon not running | sudo systemctl start docker or open Docker Desktop |
| User not in docker group | sudo usermod -aG docker $(whoami) then newgrp docker |
| Jenkins container fails to start | Check port 8080 not in use: lsof -i :8080 |
Jenkins docker: not found | Mount Docker CLI: -v /usr/bin/docker:/usr/bin/docker:ro |
Jenkins AccessDeniedException on docker.sock | Use group_add with host docker GID: stat -c '%g' /var/run/docker.sock |
Jenkins AccessDeniedException on host path | Mount project dir into Jenkins container volume |
| Jenkins Pipeline stuck in queue | Check built-in node is NORMAL mode, not EXCLUSIVE |
Jenkins API 403 No valid crumb | Use cookie jar + Jenkins-Crumb header (see jenkins-patterns.md) |
| Jenkins Pipeline XML newlines stripped | Use --data-binary (not -d) + CDATA wrapper |
| Jenkins admin warnings (CSP/node) | Dismiss via Groovy console (see jenkins-patterns.md) |
| SonarQube OOM | Increase vm.max_map_count: sudo sysctl -w vm.max_map_count=262144 |
| Docker build cache issues | docker builder prune to clean build cache |
| K8s pod CrashLoopBackOff | kubectl logs <pod> + kubectl describe pod <pod> |
| Registry push fails | ็ขบ่ช docker push arcana.boo/arcana/... ไฝฟ็จ HTTPS ๅๅ๏ผ่ฅ TLS ้ฏ่ชคๆชขๆฅ certbot ๆ่ญๆฏๅฆ้ๆ |
| Registry 502 Bad Gateway | SELinux ๅ้ก๏ผsudo setsebool -P httpd_can_network_connect 1๏ผๆๆชขๆฅ registry container ๆฏๅฆๅจ้่ก |
| Registry unreachable | Oracle Cloud ้ๅๆ้ๆพ Security Group ๅ Subnet Security List ็ port 80/443 |
| Fastlane auth failure | Re-run fastlane match or fastlane spaceauth |
| Pipeline timeout | Increase Jenkins job timeout in Jenkinsfile |
| Health check failing | Verify endpoint path and container port mapping |
| Image too large | Review multi-stage build, check .dockerignore |
Jenkins docker compose: unknown flag | Mount compose plugin: -v /usr/libexec/docker/cli-plugins:/usr/libexec/docker/cli-plugins:ro |
| Jenkins node offline (disk space) | docker system prune -af, remove unused images; min 1GB free for jenkins_home |
| ESP32 image pull slow (~11GB ARM64) | Pre-pull with docker pull espressif/idf:v5.5.2; use docker compose for cached builds (reference project now on IDF v6.x โ prefer matching the project's idf version) |
| STM32 CMake compiler test fails | Add set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY) to toolchain cmake |
Android aapt2 Syntax error: "(" unexpected on ARM64 | aapt2 is x86_64 only; use platform: linux/amd64 in docker-compose.yml + install binfmt: docker run --rm --privileged tonistiigi/binfmt --install amd64 |
Android aapt2 Could not open ld-linux-x86-64.so.2 | Must use full amd64 image (not just binfmt on ARM64 image); set platforms: [linux/amd64] in compose build config |
HarmonyOS .npmrc registry errors | Must have dual registry: registry=https://registry.npmjs.org/ (default) + @ohos:registry=https://repo.harmonyos.com/npm/ (scoped) |
HarmonyOS modelVersion mismatch | modelVersion: "6.0.0" must be in BOTH hvigor/hvigor-config.json5 AND root oh-package.json5 |
HarmonyOS analyzeEnabled invalid | Use analyze: "normal" (not analyzeEnabled: true/false) in hvigor-config.json5 execution section |
| HarmonyOS HAP packaging fails (no Java) | JDK 17 required for HAP packaging: openjdk-17-jdk-headless in Dockerfile |
Mac Mini SSH Too many authentication failures | SSH agent ๅ่ฉฆ้ๅค key๏ผไฝฟ็จๅฐ็จ key๏ผssh -i ~/.ssh/macmini.key jrjohn@192.168.11.104 |
| Mac Mini Xcode not found | ้ๅพ App Store ๅฎ่ฃๅฎๆด Xcode๏ผCommand Line Tools ไธๅค ๏ผ๏ผๅฎ่ฃๅพๅท่ก sudo xcode-select -s /Applications/Xcode.app |
Mac Mini Jenkins agent java not found | ่จญๅฎ Java Path: /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home/bin/java |
iOS pipeline swift build fails with no destinations | ็ขบ่ช Xcode ๅทฒๅฎ่ฃไธ xcode-select -p ๆๅๆญฃ็ขบ่ทฏๅพ |
| Mac Mini Homebrew permission denied | ่จญๅฎ NOPASSWD sudo๏ผecho 'jrjohn ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/jrjohn |