Skip to main content
BlogLoom ships a containerized deployment that needs only Docker and Docker Compose v2 — no JDK or Node.js on the server.

Architecture

There are just two containers: Only two fixed, non-default ports are exposed:

User path: one-click deployment

For users who just want to get the blog running, install Docker and run:
The script resolves the latest version, pulls the image, starts blogloom-app and blogloom-mysql, and initializes the database. After deployment: Upgrade later:

Developer path: build and release

One-click scripts live under docker/ in the repository:

Incremental database upgrades

  • The app entrypoint runs in order: wait for MySQL → run incremental SQL → start Java.
  • Incremental SQL is compared against records in data/sql-local/; only unrecorded scripts run, making it idempotent with no data loss.
  • The first start performs full initialization; restarts and rebuilds only check for increments.

Data persistence

data/mysql, conf/logs, conf/upload and data/sql-local are mounted to the host, so upgrades and restarts do not lose data. Back up data/mysql and conf/upload in particular.

More information

See the repository’s docker/README.md for custom configuration, data directories, backup and operations.

Next steps