Default MySQL image to mysql:8.0-debian

The Oracle Linux based mysql:8.4 image requires x86-64-v2 and fails on the
PESCO Docker host even with the Proxmox CPU type set to host. The Debian
build runs on baseline x86-64; MYSQL_IMAGE still allows overriding.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
ang3l12
2026-07-13 13:54:39 -06:00
parent 36ee982ca3
commit 45f1c56a52
3 changed files with 9 additions and 10 deletions

View File

@@ -42,11 +42,10 @@ ENTRA_API_SCOPE=
INITIAL_ADMIN_EMAILS=spencerm@pescoinc.biz
# ── MySQL ───────────────────────────────────────────────────────────────────
# Default image is mysql:8.4, which requires an x86-64-v2 CPU. If the mysql
# container dies with "Fatal glibc error: CPU does not support x86-64-v2"
# (common on VMs with a generic kvm64/qemu64 CPU type, or pre-2009 hardware),
# uncomment the Debian-based build:
#MYSQL_IMAGE=mysql:8.0-debian
# Default is the Debian-based build, which runs on any x86-64 CPU. The Oracle
# Linux images (e.g. mysql:8.4) need x86-64-v2 and crash on PESCO's Docker
# host ("Fatal glibc error"). Override only if your host supports it:
#MYSQL_IMAGE=mysql:8.4
MYSQL_HOST=mysql
MYSQL_PORT=3306
MYSQL_DATABASE=pesco_ncr

View File

@@ -304,6 +304,6 @@ Cairo — `brew install pango` on macOS). The Docker image includes them.
| "Could not verify group membership (group overage)" | Grant delegated `GroupMember.Read.All` + admin consent, or scope the group claim to "Groups assigned to the application". |
| Notification warning "OBO token exchange failed" | Check `ENTRA_CLIENT_SECRET`, and that `Mail.Send` has admin consent. |
| `api` container restarts at boot | MySQL still initializing; the entrypoint retries migrations 12×. Check `docker compose logs mysql`. |
| mysql dies instantly: "Fatal glibc error: CPU does not support x86-64-v2" | The host/VM CPU lacks x86-64-v2 (generic `kvm64`/`qemu64` VM CPU type, or pre-2009 hardware). Either set the hypervisor CPU type to `host` and reboot the VM, or set `MYSQL_IMAGE=mysql:8.0-debian` in `.env` and `docker compose down -v && docker compose up -d`. |
| mysql dies instantly: "Fatal glibc error: CPU does not support x86-64-v2" | You overrode `MYSQL_IMAGE` to an Oracle Linux build (e.g. `mysql:8.4`) on a host without x86-64-v2. Remove the override — the default `mysql:8.0-debian` runs on any x86-64 CPU. |
| Power BI can't authenticate | Update Connector/NET (needs `caching_sha2_password`), verify the `powerbi_ro` grants (`scripts/powerbi_grants.sql`). |
| Uploads fail at ~25 MB | Raise `MAX_UPLOAD_MB` (API) — nginx `client_max_body_size` is 50 MB in `frontend/nginx.conf`. |

View File

@@ -2,10 +2,10 @@ name: pesco-ncr
services:
mysql:
# mysql:8.4 (Oracle Linux 9) requires an x86-64-v2 CPU. On hosts/VMs
# without it ("Fatal glibc error: CPU does not support x86-64-v2"),
# set MYSQL_IMAGE=mysql:8.0-debian in .env (baseline x86-64 build).
image: ${MYSQL_IMAGE:-mysql:8.4}
# Debian-based build by default: the Oracle Linux images (mysql:8.4)
# require an x86-64-v2 CPU and die with "Fatal glibc error: CPU does not
# support x86-64-v2" on PESCO's Docker host. Override via MYSQL_IMAGE.
image: ${MYSQL_IMAGE:-mysql:8.0-debian}
command:
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci