Setting up a local instance of the TinyPilot web server can be tricky, because the backend has specific requirements regarding the environment – e.g.:
- On device, it runs on Raspberry Pi OS, which is a specialized flavor of Debian
- Certain system packages need to be installed
- The application makes certain assumptions about the executing user or system paths
Without intimate knowledge of these requirements, it can be challenging to bootstrap a dev environment that is fully (mostly) working.
One idea here would be to provide a tailored Docker image, which mimics the device environment closely.
This may also simplify some of our development procedures, such as running the Playwright end-to-end tests.
Setting up a local instance of the TinyPilot web server can be tricky, because the backend has specific requirements regarding the environment – e.g.:
Without intimate knowledge of these requirements, it can be challenging to bootstrap a dev environment that is fully (mostly) working.
One idea here would be to provide a tailored Docker image, which mimics the device environment closely.
This may also simplify some of our development procedures, such as running the Playwright end-to-end tests.
@jotaen4tinypilot
Ah cool, thanks! I've been using a standalone docker container setup to run
claude --dangerously-skip-permissions"safely". To avoid the repetitive login issue, it bind-mounts a shared docker volume for claude config. For example, something like:--volume "${HOME}/.claude-dont-use-locally:/root/.claude:rw"Also checkout for inspiration: