Skip to content

feat(libredb-studio): add LibreDB Studio - #992

Open
yusuf-gundogdu wants to merge 1 commit into
IceWhaleTech:mainfrom
yusuf-gundogdu:add-libredb-studio
Open

feat(libredb-studio): add LibreDB Studio#992
yusuf-gundogdu wants to merge 1 commit into
IceWhaleTech:mainfrom
yusuf-gundogdu:add-libredb-studio

Conversation

@yusuf-gundogdu

Copy link
Copy Markdown

Summary

Add LibreDB Studio, an open-source (MIT) self-hosted SQL IDE. It provides a web-based interface to connect to databases, browse schemas, write and run SQL queries, and manage data from any browser on the LAN. Data is stored locally in a SQLite database, so no external database is required.

New app under Apps/LibreDBStudio/:

  • docker-compose.yml
  • icon.svg
  • screenshot-1.png, screenshot-2.png, screenshot-3.png
  • thumbnail.png

Details

  • Image: ghcr.io/libredb/libredb-studio:0.9.66 (pinned, public on GHCR, amd64 + arm64)
  • Category: Developer
  • Web UI on container port 3000 (host 3016)
  • Data volume: bind mount /DATA/AppData/$AppID/data -> /app/data (SQLite), following the CasaOS AppData convention so the data is visible and backup-friendly. The image entrypoint starts as root, chowns the data directory to the app user, then drops privileges with gosu, so the bind mount works without any permission issue.
  • Env: ADMIN_EMAIL, ADMIN_PASSWORD, JWT_SECRET, STORAGE_PROVIDER=sqlite, STORAGE_SQLITE_PATH, AUTH_COOKIE_SECURE=false. The app is reached over plain HTTP on the LAN, so the auth cookie must not be marked Secure or login fails. The admin password and JWT secret are placeholders that each user is instructed to change before first login.

Validation

  • docker compose -f Apps/LibreDBStudio/docker-compose.yml config -q passes (exit 0).
  • Ran the container from this image locally: it becomes healthy on /api/db/health, login works over plain HTTP with the admin credentials, the entrypoint correctly chowns the mounted data directory to the app user (verified: an empty root/host-owned bind mount is re-owned to the app user on start, so no permission crash loop), the SQLite database is written under the data volume, and a saved connection persists across a container restart.

Notes

  • Only files under Apps/LibreDBStudio/ are added. No changes to category-list.json, recommend-list.json, or featured-apps.json.

Add LibreDB Studio, an open-source self-hosted SQL IDE, to the app store.
Deploys a single container with a named volume for its embedded SQLite
storage and serves a web UI on the LAN.
@sonarqubecloud

sonarqubecloud Bot commented Aug 4, 2026

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant