83 lines
1.6 KiB
Markdown
83 lines
1.6 KiB
Markdown
# Network Architecture Diagrams
|
|
|
|
Python scripts to generate network architecture diagrams using the [Diagrams](https://diagrams.mingrammer.com/) library.
|
|
|
|
## Prerequisites
|
|
|
|
- Python 3.8+
|
|
- Graphviz ([installation guide](https://graphviz.org/download/))
|
|
|
|
### Installing Graphviz
|
|
|
|
**Windows:**
|
|
```bash
|
|
choco install graphviz
|
|
# or download from https://graphviz.org/download/
|
|
```
|
|
|
|
**macOS:**
|
|
```bash
|
|
brew install graphviz
|
|
```
|
|
|
|
**Linux:**
|
|
```bash
|
|
sudo apt-get install graphviz # Debian/Ubuntu
|
|
sudo yum install graphviz # RHEL/CentOS
|
|
```
|
|
|
|
## Setup
|
|
|
|
1. Create a virtual environment:
|
|
```bash
|
|
python -m venv .venv
|
|
```
|
|
|
|
2. Activate the virtual environment:
|
|
```bash
|
|
# Windows
|
|
.venv\Scripts\activate
|
|
|
|
# macOS/Linux
|
|
source .venv/bin/activate
|
|
```
|
|
|
|
3. Install dependencies:
|
|
```bash
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
## Usage
|
|
|
|
Run the diagram generation scripts:
|
|
|
|
```bash
|
|
# Generate LAN architecture diagram
|
|
python lan_architecture.py
|
|
|
|
# Generate main diagram
|
|
python main.py
|
|
```
|
|
|
|
Output files will be generated in the current directory as PNG images.
|
|
|
|
## Available Diagrams
|
|
|
|
- `lan_architecture.py` - Home Lab / Auction Stack Architecture diagram
|
|
- `main.py` - Network architecture diagram
|
|
|
|
## Deployment
|
|
|
|
To deploy or share this project:
|
|
|
|
1. Ensure Graphviz is installed on the target system
|
|
2. Clone the repository
|
|
3. Follow the setup instructions above
|
|
4. Run the desired diagram script
|
|
|
|
## Notes
|
|
|
|
- Generated diagram files (`.png`, `.gv`) are excluded from version control
|
|
- The diagrams use a left-to-right (`LR`) layout direction
|
|
- Output files are saved with `show=False` to prevent automatic opening
|