Local Wiki.js dev environment (buckyverse.org)
Run Wiki.js locally, mirror production data from the DigitalOcean droplet, edit, and sync back. This avoids slow in-production sync and keeps edits fast.
Quick start
-
Copy env and set production SSH
cp .env.example .env # Edit .env: set PROD_SSH=root@your-droplet-ip # If Wiki.js on the droplet lives elsewhere, set PROD_COMPOSE_DIR (e.g. /opt/wikijs) -
Start local stack
docker compose up -dFirst run: open http://localhost:3000 and complete Wiki.js setup (will be replaced when you pull from prod).
-
Pull production data
chmod +x scripts/*.sh ./scripts/pull-from-prod.shThis dumps the prod DB, restores it locally, and restarts local Wiki.js.
-
Edit locally at http://localhost:3000 (no slow prod sync).
-
Push back to production
./scripts/push-to-prod.shPushes to a new database on prod (current DB unchanged); you then point Wiki.js at the new DB for instant rollback if needed. See docs-site/docs/operations/wikijs-push-rollback.md.
Optional: sync wiki data (uploads/cache)
If you need to mirror the wiki data volume (uploads, cache), not just the DB:
- On the droplet, find the Wiki.js data volume name:
docker volume ls(oftenwikijs_wiki-dataor similar). - In
.envsetPROD_WIKI_VOLUME=that_volume_name. - Pull with data:
./scripts/pull-from-prod.sh --data - Push with data:
./scripts/push-to-prod.sh --data
Requirements
- Docker and Docker Compose (local)
- SSH as
r26d@buckyverse.orgwith Docker access on the droplet (docker exec,docker start/stopwork as r26d; no compose dir needed) - Production: Wiki.js and Postgres containers named
wikianddb
Performance (GraphQL / adding content)
If Wiki.js slows down when adding lots of content via the GraphQL API, see wikijs-graphql-performance.md. Local compose already sets a 2 GB Node heap; production can use the same NODE_OPTIONS and client-side throttling.
Docs
- Full guide: docs-site/docs/wikijs-local-dev.md (or
docs-site/docs/in repo root). - Synergetics Dictionary content is synced from the elib-synergetics-dictionary repo; see synergetics-dictionary-sync.md.