]> git.giorgioravera.it Git - network-manager.git/commitdiff
Fixed docs location
authorGiorgio Ravera <giorgio.ravera@gmail.com>
Mon, 31 Aug 2026 21:11:24 +0000 (23:11 +0200)
committerGiorgio Ravera <giorgio.ravera@gmail.com>
Mon, 31 Aug 2026 21:11:24 +0000 (23:11 +0200)
backend/docs/wiki/Home.md [deleted file]
backend/docs/wiki/Quick-Start.md [deleted file]
docs/wiki/Home.md [new file with mode: 0644]
docs/wiki/Quick-Start.md [new file with mode: 0644]

diff --git a/backend/docs/wiki/Home.md b/backend/docs/wiki/Home.md
deleted file mode 100644 (file)
index 083e10b..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-# Network Manager
-
-Welcome to the **Network Manager Wiki**.
-
-Network Manager is a web-based platform designed to simplify the administration of network infrastructure through a centralized management interface. It integrates DNS, DHCP, and certificate management into a single solution, providing administrators with complete visibility and control over their network environment.
-
----
-
-## 🌐 What is Network Manager?
-
-Network Manager is an integrated frontend for:
-
-- **BIND DNS**
-- **Kea DHCP**
-- **Let's Encrypt** certificate management
-
-The application automatically generates and manages network configurations while maintaining a local configuration history that supports auditing and rollback operations. It is designed to reduce operational complexity, eliminate manual configuration errors, and provide a single source of truth for network services management.
-
----
-
-## ✨ Key Features
-
-### DNS Management
-
-Manage DNS zones and records through a modern web interface.
-
-### DHCP Management
-
-Configure and administer DHCP services and network hosts.
-
-### Automated Configuration Generation
-
-Generate DNS and DHCP configurations automatically from your defined domain and network settings.
-
-### Configuration Versioning
-
-Track changes, review history, and roll back to previous configurations when required.
-
-### Security & Authentication
-
-- Administrator authentication
-- Configurable login rate limiting
-- Docker Secrets support
-- Secure session management with customizable session keys
-
-### Lightweight & Self-Hosted
-
-- SQLite-based persistence
-- Minimal infrastructure requirements
-- Easy deployment with Docker and Docker Compose
-
-### Centralized Administration
-
-Manage hosts, DNS zones, DHCP leases, and certificates from a single interface.
-
----
-
-## 🏗 Architecture Overview
-
-```text
-┌─────────────────────────┐
-│     Web Interface       │
-└────────────┬────────────┘
-             │
-             ▼
-┌─────────────────────────┐
-│    Network Manager      │
-│      Backend/API        │
-└───────┬─────────┬───────┘
-        │         │
-        ▼         ▼
-    BIND DNS   Kea DHCP
-        │
-        ▼
- Let's Encrypt
-```
-
----
-
-## 🚀 Getting Started
-
-Deploying Network Manager is straightforward:
-
-1. Prepare a Docker environment.
-2. Configure application settings through environment variables.
-3. Launch the application using Docker Compose.
-4. Access the web interface and start managing your network services.
-
-For detailed installation instructions, continue with the **Getting Started** section of this wiki.
-
----
-
-## 📚 Documentation
-
-### Introduction
-
-- Overview
-- Architecture
-- Design Principles
-
-### Installation
-
-- Requirements
-- Docker Deployment
-- Environment Setup
-
-### Configuration
-
-- Environment Variables
-- Authentication
-- Session Management
-- Logging
-
-### Administration
-
-- DNS Management
-- DHCP Management
-- Host Management
-- Certificate Management
-
-### Operations
-
-- Backup & Restore
-- Configuration Rollback
-- Monitoring & Logs
-- Troubleshooting
-
-### Development
-
-- Development Setup
-- Project Structure
-- Roadmap
-- Contributing
-
----
-
-## 📦 Technology Stack
-
-- Python Backend
-- SQLite Database
-- BIND DNS
-- Kea DHCP
-- Let's Encrypt
-- Docker
-- Docker Compose
-
----
-
-## 🎯 Project Goals
-
-Network Manager aims to provide:
-
-- A unified interface for network service administration
-- Automated generation of service configurations
-- Secure and auditable infrastructure management
-- Simplified deployment and maintenance
-- Reliable configuration tracking and recovery mechanisms
-
----
-
-## 🚧 Project Status
-
-Network Manager is an actively developed project. New features and improvements are continuously planned and tracked through the project roadmap and TODO list.
-
----
-
-## 🤝 Contributing
-
-Contributions, bug reports, feature requests, and feedback are welcome.
-
-If you'd like to help improve Network Manager:
-
-1. Open an issue to discuss proposed changes.
-2. Fork the repository.
-3. Create a feature branch.
-4. Submit a pull request.
-
-Together we can build a powerful, modern, and easy-to-use network management platform.
-
----
-
-**Next:** → [[Getting Started]]
diff --git a/backend/docs/wiki/Quick-Start.md b/backend/docs/wiki/Quick-Start.md
deleted file mode 100644 (file)
index 2386252..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-# Quick Start
-
-This guide deploys a persistent Network Manager instance for homelab or small network environments.
-For production deployments, review the security recommendations before exposing the application to untrusted networks.
-
-## Prerequisites
-
-- Docker Engine with the Compose plugin, or another compatible container runtime.
-- TCP port 8000 available on the host.
-- A writable data volume for the SQLite database, backups, and logs.
-- A modern web browser.
-
-## Option 1: Docker Compose
-
-Download the homelab Compose file and start WebSSH:
-
-```bash
-mkdir network-manager-deployment
-cd network-manager-deployment
-curl -O https://raw.githubusercontent.com/xraver/network-manager/main/docker-compose.yaml
-docker compose up -d
-```
-
-PowerShell:
-
-```powershell
-New-Item -ItemType Directory -Path network-manager-deployment
-Set-Location network-manager-deployment
-Invoke-WebRequest `
-  https://raw.githubusercontent.com/xraver/network-manager/main/docker-compose.yaml `
-  -OutFile docker-compose.yml
-docker compose up -d
-```
-
-Open `http://localhost:8000` or replace `localhost` with the host address.
-
-## Option 2: Docker run
-
-```bash
-docker run -d \
-  --name network-manager \
-  -p 8000:8000 \
-  -e DOMAIN=example.com \
-  -e EXTERNAL_NAME=dyndns.example.com \
-  -e ADMIN_USER=admin \
-  -e ADMIN_PASSWORD=admin \
-  -v network_manager_data:/data \
-  --restart unless-stopped \
-  ghcr.io/xraver/network-manager:latest
-```
-
-The persistent volume is essential. It stores:
-- SQLite database
-- Configuration data
-- Backups
-- Application logs
-
-Removing the volume will permanently remove all stored data.
-
-## Administrator Password
-
-By default, the application creates the administrator account using the configured environment variables:
-```bash
-ADMIN_USER=admin
-ADMIN_PASSWORD=admin
-```
-For production environments, avoid plaintext passwords and use a Docker secret containing a bcrypt password hash.
-
-Generate a password hash:
-```python
-python - <<'PY'
-import bcrypt
-
-password = b"SecurePassword"
-print(bcrypt.hashpw(password, bcrypt.gensalt()).decode())
-PY
-```
-Save the result to:
-```bash
-./secrets/admin_password_hash
-```
-
-and reference it through:
-```bash
-ADMIN_PASSWORD_HASH_FILE: /run/secrets/admin_password_hash
-```
-
-## Verify the instance
-
-Check container state and readiness:
-
-```bash
-docker compose ps
-curl -fsS http://localhost:8000/about
-curl -fsS http://localhost:8000/api/health
-```
-
-You should receive an HTTP response from the application.
-
-```json
-{
-  "app": {
-    "name": "network-manager",
-    "version": "1.0.0"
-  },
-  "domain": "example.org",
-  "server_time": "2026-08-31T05:33:19.344005+00:00"
-}
-```
-
-```json
-{
-  "status": "healthy",
-  "latency_ms": 0.69,
-  "database": {
-    "status": "healthy",
-    "version": "3.53.2",
-    "tables": 6,
-    "size_mb": 0.07
-  }
-}
-```
-
-Review logs:
-```bash
-docker compose logs --tail=200 network-manager
-```
-
-Open the web interface and log in using the configured administrator account.
-
-## Next steps
-
-- [Docker and Docker Compose](Docker-and-Docker-Compose)
-- [Production Deployment](Production-Deployment)
-- [Users and Account Management](Users-and-Account-Management)
-- [Backup, Restore and Secret Rotation](Backup-Restore-and-Secret-Rotation)
diff --git a/docs/wiki/Home.md b/docs/wiki/Home.md
new file mode 100644 (file)
index 0000000..083e10b
--- /dev/null
@@ -0,0 +1,182 @@
+# Network Manager
+
+Welcome to the **Network Manager Wiki**.
+
+Network Manager is a web-based platform designed to simplify the administration of network infrastructure through a centralized management interface. It integrates DNS, DHCP, and certificate management into a single solution, providing administrators with complete visibility and control over their network environment.
+
+---
+
+## 🌐 What is Network Manager?
+
+Network Manager is an integrated frontend for:
+
+- **BIND DNS**
+- **Kea DHCP**
+- **Let's Encrypt** certificate management
+
+The application automatically generates and manages network configurations while maintaining a local configuration history that supports auditing and rollback operations. It is designed to reduce operational complexity, eliminate manual configuration errors, and provide a single source of truth for network services management.
+
+---
+
+## ✨ Key Features
+
+### DNS Management
+
+Manage DNS zones and records through a modern web interface.
+
+### DHCP Management
+
+Configure and administer DHCP services and network hosts.
+
+### Automated Configuration Generation
+
+Generate DNS and DHCP configurations automatically from your defined domain and network settings.
+
+### Configuration Versioning
+
+Track changes, review history, and roll back to previous configurations when required.
+
+### Security & Authentication
+
+- Administrator authentication
+- Configurable login rate limiting
+- Docker Secrets support
+- Secure session management with customizable session keys
+
+### Lightweight & Self-Hosted
+
+- SQLite-based persistence
+- Minimal infrastructure requirements
+- Easy deployment with Docker and Docker Compose
+
+### Centralized Administration
+
+Manage hosts, DNS zones, DHCP leases, and certificates from a single interface.
+
+---
+
+## 🏗 Architecture Overview
+
+```text
+┌─────────────────────────┐
+│     Web Interface       │
+└────────────┬────────────┘
+             │
+             ▼
+┌─────────────────────────┐
+│    Network Manager      │
+│      Backend/API        │
+└───────┬─────────┬───────┘
+        │         │
+        ▼         ▼
+    BIND DNS   Kea DHCP
+        │
+        ▼
+ Let's Encrypt
+```
+
+---
+
+## 🚀 Getting Started
+
+Deploying Network Manager is straightforward:
+
+1. Prepare a Docker environment.
+2. Configure application settings through environment variables.
+3. Launch the application using Docker Compose.
+4. Access the web interface and start managing your network services.
+
+For detailed installation instructions, continue with the **Getting Started** section of this wiki.
+
+---
+
+## 📚 Documentation
+
+### Introduction
+
+- Overview
+- Architecture
+- Design Principles
+
+### Installation
+
+- Requirements
+- Docker Deployment
+- Environment Setup
+
+### Configuration
+
+- Environment Variables
+- Authentication
+- Session Management
+- Logging
+
+### Administration
+
+- DNS Management
+- DHCP Management
+- Host Management
+- Certificate Management
+
+### Operations
+
+- Backup & Restore
+- Configuration Rollback
+- Monitoring & Logs
+- Troubleshooting
+
+### Development
+
+- Development Setup
+- Project Structure
+- Roadmap
+- Contributing
+
+---
+
+## 📦 Technology Stack
+
+- Python Backend
+- SQLite Database
+- BIND DNS
+- Kea DHCP
+- Let's Encrypt
+- Docker
+- Docker Compose
+
+---
+
+## 🎯 Project Goals
+
+Network Manager aims to provide:
+
+- A unified interface for network service administration
+- Automated generation of service configurations
+- Secure and auditable infrastructure management
+- Simplified deployment and maintenance
+- Reliable configuration tracking and recovery mechanisms
+
+---
+
+## 🚧 Project Status
+
+Network Manager is an actively developed project. New features and improvements are continuously planned and tracked through the project roadmap and TODO list.
+
+---
+
+## 🤝 Contributing
+
+Contributions, bug reports, feature requests, and feedback are welcome.
+
+If you'd like to help improve Network Manager:
+
+1. Open an issue to discuss proposed changes.
+2. Fork the repository.
+3. Create a feature branch.
+4. Submit a pull request.
+
+Together we can build a powerful, modern, and easy-to-use network management platform.
+
+---
+
+**Next:** → [[Getting Started]]
diff --git a/docs/wiki/Quick-Start.md b/docs/wiki/Quick-Start.md
new file mode 100644 (file)
index 0000000..2386252
--- /dev/null
@@ -0,0 +1,136 @@
+# Quick Start
+
+This guide deploys a persistent Network Manager instance for homelab or small network environments.
+For production deployments, review the security recommendations before exposing the application to untrusted networks.
+
+## Prerequisites
+
+- Docker Engine with the Compose plugin, or another compatible container runtime.
+- TCP port 8000 available on the host.
+- A writable data volume for the SQLite database, backups, and logs.
+- A modern web browser.
+
+## Option 1: Docker Compose
+
+Download the homelab Compose file and start WebSSH:
+
+```bash
+mkdir network-manager-deployment
+cd network-manager-deployment
+curl -O https://raw.githubusercontent.com/xraver/network-manager/main/docker-compose.yaml
+docker compose up -d
+```
+
+PowerShell:
+
+```powershell
+New-Item -ItemType Directory -Path network-manager-deployment
+Set-Location network-manager-deployment
+Invoke-WebRequest `
+  https://raw.githubusercontent.com/xraver/network-manager/main/docker-compose.yaml `
+  -OutFile docker-compose.yml
+docker compose up -d
+```
+
+Open `http://localhost:8000` or replace `localhost` with the host address.
+
+## Option 2: Docker run
+
+```bash
+docker run -d \
+  --name network-manager \
+  -p 8000:8000 \
+  -e DOMAIN=example.com \
+  -e EXTERNAL_NAME=dyndns.example.com \
+  -e ADMIN_USER=admin \
+  -e ADMIN_PASSWORD=admin \
+  -v network_manager_data:/data \
+  --restart unless-stopped \
+  ghcr.io/xraver/network-manager:latest
+```
+
+The persistent volume is essential. It stores:
+- SQLite database
+- Configuration data
+- Backups
+- Application logs
+
+Removing the volume will permanently remove all stored data.
+
+## Administrator Password
+
+By default, the application creates the administrator account using the configured environment variables:
+```bash
+ADMIN_USER=admin
+ADMIN_PASSWORD=admin
+```
+For production environments, avoid plaintext passwords and use a Docker secret containing a bcrypt password hash.
+
+Generate a password hash:
+```python
+python - <<'PY'
+import bcrypt
+
+password = b"SecurePassword"
+print(bcrypt.hashpw(password, bcrypt.gensalt()).decode())
+PY
+```
+Save the result to:
+```bash
+./secrets/admin_password_hash
+```
+
+and reference it through:
+```bash
+ADMIN_PASSWORD_HASH_FILE: /run/secrets/admin_password_hash
+```
+
+## Verify the instance
+
+Check container state and readiness:
+
+```bash
+docker compose ps
+curl -fsS http://localhost:8000/about
+curl -fsS http://localhost:8000/api/health
+```
+
+You should receive an HTTP response from the application.
+
+```json
+{
+  "app": {
+    "name": "network-manager",
+    "version": "1.0.0"
+  },
+  "domain": "example.org",
+  "server_time": "2026-08-31T05:33:19.344005+00:00"
+}
+```
+
+```json
+{
+  "status": "healthy",
+  "latency_ms": 0.69,
+  "database": {
+    "status": "healthy",
+    "version": "3.53.2",
+    "tables": 6,
+    "size_mb": 0.07
+  }
+}
+```
+
+Review logs:
+```bash
+docker compose logs --tail=200 network-manager
+```
+
+Open the web interface and log in using the configured administrator account.
+
+## Next steps
+
+- [Docker and Docker Compose](Docker-and-Docker-Compose)
+- [Production Deployment](Production-Deployment)
+- [Users and Account Management](Users-and-Account-Management)
+- [Backup, Restore and Secret Rotation](Backup-Restore-and-Secret-Rotation)