Run a private photo and video gallery on your own server with Docker
Replace a third-party cloud media service with a self-hosted alternative
Upload media programmatically through the JSON API
Hack on the Laravel plus React stack as a starter project
Single docker run with a volume mount and public URL env var gets you to /setup.
Capty Cloud is a small web application for hosting and managing galleries of images and videos on your own server, rather than uploading them to a service run by someone else. The README describes it as self-hostable, which means anyone can download the code or container image and run their own copy without depending on an outside provider. The application has an admin dashboard for browsing and arranging media, and a simple API for uploading new files. There is also a setup page at /setup that walks the first-time user through creating an admin account. The simplest way to run it is with Docker. The README shows a single docker run command that pulls the captyapp/cloud image, exposes port 8080, mounts a local data folder for persistence, and sets the public URL through an environment variable. By default the app uses SQLite as its database, so there is no separate database server to install. After the container is up, the user opens http://localhost:8080 in a browser to finish setup. For people who want to work on the code, the README also lists a local development flow: composer install for the PHP dependencies, npm install for the JavaScript side, copying the example environment file, running php artisan migrate to create the database tables, and then composer run dev to start the dev server, the Vite asset builder, a queue worker, and a log watcher all together. The stack is Laravel 13 on the backend, with Inertia 2 bridging it to a React 19 frontend, styled with Tailwind CSS v4 and components from shadcn/ui. The README is short and points to a docs folder for full documentation, which is also rendered at /docs inside the running app. The repository has 2 stars at the time of this snapshot.
Generated 2026-05-22 · Model: sonnet-4-6 · Verify against the repo before relying on details.