diff --git a/README.md b/README.md index a4e937f..e26d974 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,7 @@ described in [Remote workers](docs/code/workers.md). ## Getting started -Needs Docker with Compose v2, on x86-64 or arm64 such as a Raspberry Pi 4 or 5. +Needs Docker with Compose 2.24 or newer, on x86-64 or arm64 such as a Raspberry Pi 4 or 5. ```sh docker compose up -d # http://localhost:8080 diff --git a/backend/Dockerfile b/backend/Dockerfile index 9efe368..db50f14 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -31,7 +31,7 @@ RUN bun run build FROM python:3.13-slim AS backend # Ref: https://docs.astral.sh/uv/guides/integration/docker/ -COPY --from=ghcr.io/astral-sh/uv:0.9.26 /uv /bin/ +COPY --from=ghcr.io/astral-sh/uv:0.13.6 /uv /bin/ # A slow link, such as a Raspberry Pi on WiFi, outlasts uv's default 30 s # download timeout. ENV UV_COMPILE_BYTECODE=1 UV_LINK_MODE=copy UV_HTTP_TIMEOUT=120 diff --git a/bun.lock b/bun.lock index f82c7ab..dd9b033 100644 --- a/bun.lock +++ b/bun.lock @@ -720,7 +720,7 @@ "fdir": ["fdir@6.5.0", "", { "peerDependencies": { "picomatch": "^3 || ^4" } }, "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg=="], - "follow-redirects": ["follow-redirects@1.16.1", "", { "peerDependencies": { "debug": "*" }, "optionalPeers": ["debug"] }, "sha512-FNvFGzoMLWmE6Yj9spb/zjd7yiNCHiAW9/Tg9CXrQ8wuu32HtlJOwWO11OJafl5FfY3DxTdQ0vj42zU1kvv5jg=="], + "follow-redirects": ["follow-redirects@1.16.2", "", {}, "sha512-/kVP2U8z596Ia0gwFrwyIeo74ta5aVmSeU1FfAUMAmcEP5EP7zydmag3SLiN64NaRKef3lxsq7i/g7ltJQDGow=="], "form-data": ["form-data@4.0.6", "", { "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", "es-set-tostringtag": "^2.1.0", "hasown": "^2.0.4", "mime-types": "^2.1.35" } }, "sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ=="], @@ -1000,9 +1000,9 @@ "semver": ["semver@6.3.1", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="], - "seroval": ["seroval@1.6.8", "", {}, "sha512-HlSgSAkTk4EqHcje1ptJjfZi1YDv5KbhVJ/d3P7T/nAXua2VmDu+AKDX5VTdFfZf48nDkWB2TKYt0DrCSa+3wg=="], + "seroval": ["seroval@1.6.12", "", {}, "sha512-CqbIVfk/7GL3ITwZI55lcPbpQbjHZ2DD5cUj4iH7E9YsCfHNJV1mx7yNp86Z84w5IpmkZZS/2s5vPOWmVWSdQg=="], - "seroval-plugins": ["seroval-plugins@1.6.8", "", { "peerDependencies": { "seroval": "^1.0" } }, "sha512-N7mWAMydj89EnYTHtRpS3LBrAz3J9O6oVrqpuXuvlAHfAUG8WEKqtbAd7SBiJNY5NfCAFhSdyAh7wI4Shjqy4g=="], + "seroval-plugins": ["seroval-plugins@1.6.12", "", { "peerDependencies": { "seroval": "^1.0" } }, "sha512-+reiwp/lYxiyctSrdvX7OQ1YLrcbWYgBiZrhSFL+V43b0/DGRLNVSDyZINbQe+tWplPOI2fw2dPrdv6hcc09kQ=="], "source-map": ["source-map@0.6.1", "", {}, "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="], diff --git a/docs/getting-started/facility-automation.md b/docs/getting-started/facility-automation.md index 249fb9a..3019d7c 100644 --- a/docs/getting-started/facility-automation.md +++ b/docs/getting-started/facility-automation.md @@ -5,10 +5,18 @@ No hardware required for the first lap. ## Start Fluksio -You need Git and Docker with Compose v2 on a 64-bit machine, x86 or ARM. A -Raspberry Pi 4 or 5 with a 64-bit OS works too. Clone the app repository and -start its single container. Replace `` with the app -repository's URL: +You need Git and Docker with Compose 2.24 or newer on a 64-bit machine, x86 or +ARM. Any current Docker release qualifies. A Raspberry Pi 4 or 5 with a 64-bit +OS works too. On Raspberry Pi OS, install Docker from +[Docker's Debian repository](https://docs.docker.com/engine/install/debian/), +then let your user run it without `sudo` and log in again: + +```sh +sudo usermod -aG docker $USER +``` + +Clone the app repository and start its single container. Replace +`` with the app repository's URL: ```sh git clone fluksio