117 lines
2.7 KiB
Markdown
117 lines
2.7 KiB
Markdown
# Medi-WOL - Wake-on-LAN Manager
|
|
|
|
Ein moderner Wake-on-LAN Manager, entwickelt mit Go und einer schönen Web-Oberfläche.
|
|
|
|
## Features
|
|
|
|
- **PC-Verwaltung**: Hinzufügen, Anzeigen und Löschen von PC-Einträgen
|
|
- **Wake-on-LAN**: Ein-Klick-Aufwecken von Computern über MAC-Adressen
|
|
- **Moderne Web-Oberfläche**: Responsive Design mit Bootstrap und FontAwesome
|
|
- **SQLite-Datenbank**: Einfache lokale Datenspeicherung
|
|
- **Cross-Platform**: Läuft auf Windows und Linux
|
|
|
|
## Voraussetzungen
|
|
|
|
- Go 1.21 oder höher
|
|
- Git
|
|
|
|
## Installation
|
|
|
|
1. **Repository klonen:**
|
|
```bash
|
|
git clone <repository-url>
|
|
cd medi-wol
|
|
```
|
|
|
|
2. **Abhängigkeiten installieren:**
|
|
```bash
|
|
go mod tidy
|
|
```
|
|
|
|
3. **Anwendung starten:**
|
|
```bash
|
|
go run cmd/server/main.go
|
|
```
|
|
|
|
4. **Im Browser öffnen:**
|
|
```
|
|
http://localhost:8080
|
|
```
|
|
|
|
## Verwendung
|
|
|
|
### PC hinzufügen
|
|
1. Geben Sie den Namen des PCs ein
|
|
2. Geben Sie die MAC-Adresse im Format `XX:XX:XX:XX:XX:XX` ein
|
|
3. Klicken Sie auf "PC hinzufügen"
|
|
|
|
### PC aufwecken
|
|
- Klicken Sie auf den "Aufwecken"-Button neben dem gewünschten PC
|
|
- Das System sendet automatisch ein Wake-on-LAN Paket
|
|
|
|
### PC löschen
|
|
- Klicken Sie auf den "Löschen"-Button neben dem gewünschten PC
|
|
- Bestätigen Sie die Löschung
|
|
|
|
## Projektstruktur
|
|
|
|
```
|
|
medi-wol/
|
|
├── cmd/server/ # Hauptanwendung
|
|
├── internal/ # Interne Pakete
|
|
│ ├── database/ # Datenbanklogik
|
|
│ ├── handlers/ # HTTP-Handler
|
|
│ ├── models/ # Datenmodelle
|
|
│ └── wol/ # Wake-on-LAN Service
|
|
├── web/ # Web-Oberfläche
|
|
│ ├── static/ # CSS, JavaScript
|
|
│ └── templates/ # HTML-Templates
|
|
├── go.mod # Go-Module
|
|
└── README.md # Diese Datei
|
|
```
|
|
|
|
## API-Endpunkte
|
|
|
|
- `GET /` - Hauptseite
|
|
- `GET /api/pcs` - Alle PCs abrufen
|
|
- `POST /api/pcs` - Neuen PC erstellen
|
|
- `DELETE /api/pcs/:id` - PC löschen
|
|
- `POST /api/pcs/:id/wake` - PC aufwecken
|
|
|
|
## Datenbank
|
|
|
|
Die Anwendung verwendet SQLite als lokale Datenbank. Die Datenbankdatei `medi-wol.db` wird automatisch im Projektverzeichnis erstellt.
|
|
|
|
## Wake-on-LAN
|
|
|
|
Das System sendet Magic Packets an die gespeicherten MAC-Adressen. Stellen Sie sicher, dass:
|
|
|
|
1. Die Zielcomputer Wake-on-LAN unterstützen
|
|
2. Die Netzwerkkarte für Wake-on-LAN konfiguriert ist
|
|
3. Die Computer im gleichen Netzwerksegment sind
|
|
|
|
## Entwicklung
|
|
|
|
### Lokale Entwicklung
|
|
```bash
|
|
go run cmd/server/main.go
|
|
```
|
|
|
|
### Build für Produktion
|
|
```bash
|
|
go build -o medi-wol cmd/server/main.go
|
|
```
|
|
|
|
### Tests ausführen
|
|
```bash
|
|
go test ./...
|
|
```
|
|
|
|
## Lizenz
|
|
|
|
Dieses Projekt ist für den internen Gebrauch bestimmt.
|
|
|
|
## Support
|
|
|
|
Bei Fragen oder Problemen wenden Sie sich an das Entwicklungsteam.
|