1.7 KiB
think.greaterchiangmai.com
Two Laravel 10 apps sharing one MySQL database (greaterc_db2024):
think.greaterchiangmai.com/— public sitethink-backend.greaterchiangmai.com/— CMS (/login)upload-large-file/— standalone S3 multipart upload helper (Node)
Local development
Requires Nix with flakes.
nix run # installs vendors on first run, starts MariaDB, serves both apps; Ctrl-C stops all
- site: http://127.0.0.1:8000
- CMS: http://127.0.0.1:8001
Database
dev/schema.sql is the schema (10 tables, no category table — category_id 1/2 is hardcoded).
It is derived from the production dump and applied automatically on every db start
(idempotent), so a fresh checkout serves empty pages with no 500s. There are no Laravel
migrations for these tables; edit dev/schema.sql when prod changes.
To work with real content, load a production dump (drops and recreates the local DB):
nix run . -- db import .dev/greaterc_db2024.sql # phpMyAdmin export, kept out of git
nix run . -- db reset # back to empty schema
nix run . -- <cmd> forwards to the dev script; nix develop drops you into a shell with
dev, php, composer, mariadb, node on PATH (direnv: .envrc → use flake).
Other commands: dev db start|stop|status|shell|reset|import, dev serve frontend|backend,
dev artisan <app> ..., dev down. See dev help.
The local DB listens on 127.0.0.1:3307 (override with DEV_DB_PORT); the dev script
injects DB_*, APP_DEBUG=true, TEST_LOCAL=true via the process environment so each
app's .env is left untouched. Ports: DEV_FRONTEND_PORT, DEV_BACKEND_PORT.