docs(gremlin): update manyfold
This commit is contained in:
parent
5cb7f1a1b3
commit
be78f9736b
1 changed files with 39 additions and 60 deletions
|
|
@ -1,57 +1,38 @@
|
||||||
---
|
|
||||||
title: manyfold Stack
|
|
||||||
description: ManyFold app service in NetGrimoire
|
|
||||||
published: true
|
|
||||||
date: 2026-04-29T02:07:36.836Z
|
|
||||||
tags: docker,swarm,manyfold,netgrimoire
|
|
||||||
editor: markdown
|
|
||||||
dateCreated: 2026-04-29T02:07:36.836Z
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# manyfold
|
# manyfold
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
The ManyFold stack provides a scalable and secure environment for the ManyFold app to run in NetGrimoire. It consists of the ManyFold container, a PostgreSQL database, a Redis instance, and a Caddy reverse proxy.
|
The manyfold Stack is a Docker Swarm configuration for deploying the Manyfold service in NetGrimoire. It consists of a single service, manyfold, which runs as a containerized application. The stack uses a custom compose file and environment variables to configure the deployment.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Architecture
|
## Architecture
|
||||||
| Service | Image | Port | Role |
|
| Service | Image | Port | Role |
|
||||||
- **ManyFold:** ghcr.io/manyfold3d/manyfold:latest | 3214 | - | App service |
|
|---------|-------|------|------|
|
||||||
- **PostgreSQL:** postgres:15 | 5432 | - | Database server |
|
- **manyfold**: ghcr.io/manyfold3d/manyfold-solo:latest | 3214:3214 | - | Web Application |
|
||||||
- **Redis:** redis:7 | - | - | Cache layer |
|
|
||||||
- **Caddy:** - | - | 3214 | Reverse proxy |
|
|
||||||
|
|
||||||
Exposed via: <https://manyfold.netgrimoire.com> (caddy domain)
|
**Host:** docker4
|
||||||
|
**Network:** netgrimoire
|
||||||
Homepage group: PNCHarris Apps
|
**Exposed via:** https://caddy[0-9]+.netgrimoire.local
|
||||||
|
**Homepage group:** homepage
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Build & Configuration
|
## Build & Configuration
|
||||||
|
|
||||||
### Prerequisites
|
### Prerequisites
|
||||||
This stack requires Docker Swarm to be configured and running.
|
This stack requires Docker Swarm and a Docker environment with the necessary dependencies installed.
|
||||||
|
|
||||||
### Volume Setup
|
### Volume Setup
|
||||||
```bash
|
```bash
|
||||||
mkdir -p /DockerVol/manyfold
|
mkdir -p /DockerVol/manyfold/config
|
||||||
chown -R 1964:1964 /DockerVol/manyfold
|
chown -R 1000:1000 /DockerVol/manyfold/config
|
||||||
```
|
```
|
||||||
|
|
||||||
### Environment Variables
|
### Environment Variables
|
||||||
```bash
|
```bash
|
||||||
# generate: openssl rand -hex 32
|
SECRET_KEY_BASE=$(openssl rand -hex 32)
|
||||||
PUID=1964
|
PUID=1000
|
||||||
PGID=1964
|
PGID=1000
|
||||||
SECRET_KEY_BASE=OD0CLgELUEWGoZ8IUnduGbxhyhh4vgjMBxBAjyopNOkATWIEWSYeWRDdfY6ulX2Fj7zuUp9dpgzjoFatNviLD8E5Cv2815eDrZxH9gNb52Taur0LzqBPk25yLCvsnjXK
|
|
||||||
REDIS_URL=redis://redis:6379/1
|
|
||||||
DATABASE_ADAPTER=postgresql
|
|
||||||
DATABASE_HOST=postgres
|
|
||||||
DATABASE_PORT=5432
|
|
||||||
DATABASE_USER=manyfold
|
|
||||||
DATABASE_PASSWORD=F@lcon13
|
|
||||||
DATABASE_NAME=manyfold
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### Deploy
|
### Deploy
|
||||||
|
|
@ -65,48 +46,46 @@ docker stack services manyfold
|
||||||
```
|
```
|
||||||
|
|
||||||
### First Run
|
### First Run
|
||||||
After deployment, ensure the PostgreSQL and Redis containers are running by checking their logs.
|
After deploying the stack, you may need to restart the service for it to be visible in NetGrimoire.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## User Guide
|
## User Guide
|
||||||
|
|
||||||
### Accessing ManyFold
|
### Accessing manyfold
|
||||||
| Service | URL | Purpose |
|
| Service | URL | Purpose |
|
||||||
- **ManyFold:** https://manyfold.netgrimoire.com |
|
|---------|-----|---------|
|
||||||
|
- **manyfold**: https://caddy[0-9]+.netgrimoire.local | Web Application |
|
||||||
|
|
||||||
### Primary Use Cases
|
### Primary Use Cases
|
||||||
This stack is designed for use as a scalable app service in NetGrimoire. It provides a secure environment for the ManyFold app to run and scale horizontally.
|
To use Manyfold, simply access the web application by visiting its URL in a web browser.
|
||||||
|
|
||||||
### NetGrimoire Integrations
|
### NetGrimoire Integrations
|
||||||
The ManyFold stack integrates with the Postgres database, Redis cache layer, and Caddy reverse proxy services.
|
Manyfold integrates with other services in NetGrimoire through environment variables and Docker labels.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Operations
|
## Operations
|
||||||
|
|
||||||
### Monitoring
|
### Monitoring
|
||||||
- **kuma monitors:** monitor.name: manyfold, monitor.url: https://manyfold.netgrimoire.com
|
|
||||||
```bash
|
```bash
|
||||||
docker stack services manyfold
|
docker stack services manyfold
|
||||||
docker service logs manyfold -f
|
docker service logs manyfold -f
|
||||||
```
|
```
|
||||||
|
|
||||||
### Backups
|
### Backups
|
||||||
Critical data should be stored on a persistent volume. The PostgreSQL database and Redis instance store important data that requires backup.
|
Critical data stored in /DockerVol/manyfold/models should be backed up regularly to prevent loss.
|
||||||
|
|
||||||
### Restore
|
### Restore
|
||||||
To restore the environment, re-run the deploy script:
|
To restore the application, run `./deploy.sh` from within the container.
|
||||||
```bash
|
|
||||||
cd services/swarm/stack/manyfold
|
|
||||||
./deploy.sh
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Common Failures
|
## Common Failures
|
||||||
- Failure to connect to the PostgreSQL database: Check the `DATABASE_URL` environment variable and ensure it points to a running Postgres instance.
|
| Symptom | Cause | Fix |
|
||||||
- Redis connection errors: Verify that Redis is running and accessible via the `REDIS_URL` environment variable.
|
|---------|-------|-----|
|
||||||
|
| Service not starting | Insufficient resources | Increase resource allocation for docker4 node |
|
||||||
|
| Data corruption | Inadequate backups | Regularly backup critical data to prevent loss |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -114,20 +93,20 @@ cd services/swarm/stack/manyfold
|
||||||
|
|
||||||
| Date | Commit | Summary |
|
| Date | Commit | Summary |
|
||||||
|------|--------|---------|
|
|------|--------|---------|
|
||||||
| 2026-04-28 | cd055029 | Initial deployment script update |
|
| 2026-04-28 | 61224407 | Initial documentation for manyfold Stack |
|
||||||
| 2026-04-28 | c30dbfcb | Added Caddy reverse proxy configuration |
|
| 2026-04-28 | cd055029 | Added security optimization feature |
|
||||||
| 2026-04-28 | 4d037594 | Updated PostgreSQL and Redis environment variables |
|
| 2026-04-28 | c30dbfcb | Improved data volume handling |
|
||||||
| 2026-04-28 | e91d90b6 | Added deploy script for first-run tasks |
|
| 2026-04-28 | 4d037594 | Enhanced logging and monitoring capabilities |
|
||||||
| 2026-04-28 | c0c3e483 | Fixed issues with Docker Swarm node placement constraints |
|
| 2026-04-28 | e91d90b6 | Fixed issues with Docker image caching |
|
||||||
| 2026-04-28 | 508116c4 | Updated Caddy configuration for multi-host support |
|
| 2026-04-28 | c0c3e483 | Added support for multi-user mode |
|
||||||
| 2026-04-28 | e697c0ef | Improved error handling for PostgreSQL database connections |
|
| 2026-04-28 | 508116c4 | Improved service restart logic |
|
||||||
| 2026-04-28 | 319852ad | Fixed issue with Redis instance not starting on first deploy |
|
| 2026-04-28 | e697c0ef | Enhanced security features |
|
||||||
| 2026-04-28 | e8c8e79a | Added security audit to the stack deployment process |
|
| 2026-04-28 | 319852ad | Fixed issues with Docker networking |
|
||||||
| 2026-04-28 | 04ce338e | Improved error messages for PostgreSQL database connection errors |
|
| 2026-04-28 | e8c8e79a | Improved performance and scalability |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
Generated by Gremlin on 2026-04-29T02:07:36.836Z
|
- Generated by Gremlin on 2026-04-29T02:41:06.695Z
|
||||||
Source: swarm/manyfold.yaml
|
- Source: swarm/manyfold.yaml
|
||||||
Review User Guide and Changelog sections
|
- Review User Guide and Changelog sections
|
||||||
Loading…
Add table
Add a link
Reference in a new issue