Fix build job: install current docker-ce-cli, not stale docker.io
All checks were successful
Build & Push Images / build (push) Successful in 4m4s
CI / validate (push) Successful in 1m11s

The first CI build failed: the job container (node:22-bookworm) installed
Debian's `docker.io` (Docker 20.10.24, API 1.41), which the host daemon
(29.x, minimum API 1.44) rejects with "client version 1.41 is too old".

Install docker-ce-cli from Docker's official apt repo instead, which is
current and talks to the daemon fine. Verified on the runner: a
node:22-bookworm container with the mounted socket + docker-ce-cli
connects to the 29.1.3 daemon (API 1.52) successfully. This also confirms
the runner's docker_host=automount is working (the client reached the
daemon; only the version was the problem).

Co-authored-by: Samuel James <ssamjame@amazon.com>
Co-authored-by: Kiro <noreply@kiro.dev>
This commit is contained in:
Samuel James 2026-06-25 11:13:01 -04:00
parent 00fc3ceed3
commit 2b2a809352

View file

@ -31,9 +31,17 @@ jobs:
uses: actions/checkout@v4
- name: Install Docker CLI
# Debian bookworm's docker.io is too old (API 1.41) for the host daemon
# (needs >= 1.44), so install the current docker-ce-cli from Docker's repo.
run: |
apt-get update
apt-get install -y --no-install-recommends docker.io
apt-get install -y --no-install-recommends ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian bookworm stable" > /etc/apt/sources.list.d/docker.list
apt-get update
apt-get install -y --no-install-recommends docker-ce-cli
docker version
- name: Log in to Forgejo registry