refactor: rewrite docmost_dev to match template conventions

- Rename docker-compose.yml to compose.yaml
- Add env var defaults for all images, ports, and secrets
- Convert env style from YAML mapping to list style
- Use VOL_PATH base /data pattern for all volumes
- Add proxy network for docmost, internal network for db/redis
- Add missing sample.env with all configurable vars
- Rewrite README with new section order and multi-service docs
This commit is contained in:
2026-07-02 21:47:20 -07:00
parent 3d83441388
commit f4ada40858
2 changed files with 60 additions and 46 deletions
+60 -4
View File
@@ -1,9 +1,65 @@
# Docmost
ENV: https://docmost.com/docs/self-hosting/environment-variables
## Overview
Redis: https://hub.docker.com/_/redis
Docmost is a collaborative wiki and documentation platform, similar to Notion or Outline. It supports real-time editing, page hierarchies, and rich content. This stack includes PostgreSQL for data storage and Redis for session management and caching.
Postgres: https://hub.docker.com/_/postgres
## Project Details
proxy port: 3000
- **Project Repository:** [https://docmost.com/](https://docmost.com/)
- **Container Image:** [docmost/docmost](https://hub.docker.com/r/docmost/docmost)
- **Reverse Proxy Port:** `3000` (internally), mapped to `8000` by default
## Getting Started
Open http://localhost:8000 in your browser:
1. Create your admin account on first visit
2. Start creating pages and organizing your workspace
3. Optionally configure SMTP in the compose environment for email invites
## Environment Variable Notes
| Variable | Description |
|---|---|
| `DOCMOST_IMAGE` | Docmost container image (default: `docmost/docmost:latest`) |
| `POSTGRES_IMAGE` | PostgreSQL image (default: `postgres:16-alpine`) |
| `REDIS_IMAGE` | Redis image (default: `redis:7-alpine`) |
| `DOCMOST_RESTART` | Restart policy for all services (default: `unless-stopped`) |
| `DOCMOST_PORT` | Published port for the web UI (default: `8000`) |
| `VOL_PATH` | Base path for persistent data volumes (default: `/data`) |
| `APP_URL` | Public-facing URL of your Docmost instance |
| `APP_SECRET` | Secret key used for encryption and sessions — generate a long random string |
| `DB_PASSWORD` | Password for the PostgreSQL database user |
## Volume Notes
| Volume | Purpose |
|---|---|
| `${VOL_PATH:-/data}/docmost/storage` | Docmost uploads and data storage |
| `${VOL_PATH:-/data}/docmost/db` | PostgreSQL database files |
| `${VOL_PATH:-/data}/docmost/redis` | Redis persistence data |
## Network Notes
- `proxy` — external network for reverse proxy access to the Docmost web UI
- `docmost_internal` — internal bridge network for communication between Docmost, PostgreSQL, and Redis
Create the proxy network once with:
```bash
docker network create proxy
```
## Docker Run
This is a multi-service stack — use `docker compose` instead of individual `docker run` commands.
## Dockhand Stack, Deploy from Git
- **Cookbooks Repository**
- **stackname:** docmost_dev
- **Compose file path:** docmost_dev/compose.yaml
- **Additional env file (optional):** docmost_dev/sample.env
Load `docmost_dev/sample.env` into the Environment variables in Dockhand, then create the Stack.