MintJams CMS: JCR 2.0 content repository, Webtop virtual desktop, built-in SAML 2.0 IdP/SP. Beta.
4.8K
MintJams CMS is a lightweight, high-performance Content Management System built on a simplified implementation of the Content Repository for Java Technology API 2.0 (JSR 283).
It bundles a JCR-backed server runtime on Apache Felix alongside a modern, browser-based virtual desktop ("Webtop") for content authoring, enterprise integrations, and system administration. It features zero-configuration SAML 2.0 authentication out of the box.
linux/amd64 and linux/arm64 images (supports x86_64 and Apple Silicon/ARM64 servers without emulation).Run the container with CMS_PUBLIC_BASE_URL specified (required for SAML SP/IdP URL generation):
docker run -d \
-p 8080:8080 \
-e CMS_PUBLIC_BASE_URL=http://localhost:8080 \
-v cms-repository:/data/repository \
-v cms-secrets:/data/secrets \
-v cms-index:/data/index \
--name mintjams-cms \
mintjams/cms:latest
Open http://localhost:8080 in your browser.
services:
cms:
image: mintjams/cms:latest
restart: unless-stopped
environment:
CMS_PUBLIC_BASE_URL: "http://localhost:8080"
ports:
- "8080:8080"
volumes:
- cms-repository:/data/repository
- cms-secrets:/data/secrets
- cms-index:/data/index
volumes:
cms-repository:
cms-secrets:
cms-index:
On the first start, a random password for the built-in admin user is generated and stored in the repository volume. Retrieve it using:
docker exec mintjams-cms cat /data/repository/INITIAL_PASSWORD.txt
Log in as admin, change the password via Preferences, and delete the password file:
docker exec mintjams-cms rm /data/repository/INITIAL_PASSWORD.txt
Alternatively, set the initial password on startup by passing -e CMS_INITIAL_ADMIN_PASSWORD=your_password.
| Variable | Required | Description |
|---|---|---|
CMS_PUBLIC_BASE_URL | Yes | Public base URL (e.g., https://cms.example.org). Used for SAML SP & IdP endpoints. |
CMS_INITIAL_ADMIN_PASSWORD | No | Explicit password for the admin user on first run. |
CMS_CLUSTER_ENABLED | No | Set to true to enable clustered mode. |
CMS_JAVA_OPTS | No | Additional JVM options (e.g., -Xmx4g). |
| Mount Path | Purpose |
|---|---|
/data/repository | JCR content, generated SP/IdP keystores (*.p12), and runtime configuration (etc/*.yml). |
/data/secrets | AES master key used for encrypting keystore passwords and sensitive data. Must be backed up separately. |
/data/index | Node-local full-text search index (rebuilt automatically if empty). |
All trademarks are the property of their respective owners.
Built with ❤️ by MintJams Inc.
Content type
Image
Digest
sha256:963f692e9…
Size
406.5 MB
Last updated
about 22 hours ago
docker pull mintjams/cms