Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
97 changes: 51 additions & 46 deletions docs/installation/docker.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -28,21 +28,21 @@ Du benötigst eine `evcc.yaml` Konfigurationsdatei für deine Komponenten (Zähl
Es gibt mehrere Möglichkeiten, diese zu erstellen:

1. **Assistent auf anderem System:** Führe `evcc configure` vorher auf einem [Linux](./linux), [macOS](./macos) oder [Windows](./windows) System aus.
Verwende die damit erstellte `evcc.yaml` Datei für deine Docker Installation.
Verwende die damit erstellte `evcc.yaml` Datei für deine Docker Installation.

2. **Manuell:** Erstelle die `evcc.yaml` manuell.
Hier findest du eine Anleitung unter [evcc.yaml erstellen](./configuration).
Hier findest du eine Anleitung unter [evcc.yaml erstellen](./configuration).

3. **Assistent in Docker:**
Praktisch, wenn du Docker auf einem Linux System installiert hast.
Erstelle eine leere `evcc.yaml` Datei und führe den Konfigurationsassistenten direkt in Docker aus.
Folge den Fragen des Assistenten.
Am Ende wird die Konfiguration in die erstellte `evcc.yaml` Datei geschrieben.
Praktisch, wenn du Docker auf einem Linux System installiert hast.
Erstelle eine leere `evcc.yaml` Datei und führe den Konfigurationsassistenten direkt in Docker aus.
Folge den Fragen des Assistenten.
Am Ende wird die Konfiguration in die erstellte `evcc.yaml` Datei geschrieben.

```sh
touch evcc.yaml
docker run -v $(pwd)/evcc.yaml:/app/evcc.yaml -it evcc/evcc:latest evcc configure
```
```sh
touch evcc.yaml
docker run -v $(pwd)/evcc.yaml:/app/evcc.yaml -it evcc/evcc:latest evcc configure
```

### Volumes

Expand Down Expand Up @@ -71,22 +71,22 @@ Hier sind die relevanten Angaben, die du eintragen musst:

#### Volume Mounts {#volumes}

| Host Pfad | Container Pfad | Beschreibung |
|------------------------|-----------------|-----------------------------------|
| `/home/user/evcc.yaml` | `/etc/evcc.yaml`| Konfigurationsdatei |
| `/home/user/.evcc/` | `/root/.evcc` | Verzeichnis für interne Datenbank |
| Host Pfad | Container Pfad | Beschreibung |
| ---------------------- | ---------------- | --------------------------------- |
| `/home/user/evcc.yaml` | `/etc/evcc.yaml` | Konfigurationsdatei |
| `/home/user/.evcc/` | `/root/.evcc` | Verzeichnis für interne Datenbank |

#### Ports {#ports}

| Host Port | Container Port | Beschreibung | Optional |
|-----------|----------------|-------------------------|----------|
| 7070 | 7070/tcp | Web UI, API | |
| 8887 | 8887/tcp | OCPP Server | Yes |
| 9522 | 9522/udp | SMA Sunny Home Manager | Yes |
| 7090 | 7090/udp | KEBA Chargers | Yes |
| 5353 | 5353/udp | mDNS | Yes |
| 4712 | 4712/tcp | EEBus | Yes |
| 8899 | 8899/udp | Modbus UDP | Yes |
| Host Port | Container Port | Beschreibung | Optional |
| --------- | -------------- | ---------------------- | -------- |
| 7070 | 7070/tcp | Web UI, API | |
| 8887 | 8887/tcp | OCPP Server | Yes |
| 9522 | 9522/udp | SMA Sunny Home Manager | Yes |
| 7090 | 7090/udp | KEBA Chargers | Yes |
| 5353 | 5353/udp | mDNS | Yes |
| 4712 | 4712/tcp | EEBus | Yes |
| 8899 | 8899/udp | Modbus UDP | Yes |

Öffne die Docker UI deines Systems und erstelle einen neuen Container mit den obigen Angaben und starte ihn.

Expand Down Expand Up @@ -124,27 +124,28 @@ evcc/evcc:latest
</TabItem>
<TabItem value="sma" label="SMA Geräte und EEBus">

```sh
sudo docker run -d --name evcc \
-v /home/user/evcc.yaml:/etc/evcc.yaml \
-v /home/user/.evcc:/root/.evcc \
-p 7070:7070 \
-p 8887:8887 \
# highlight-start
-p 9522:9522/udp \
-p 4712:4712 \
--network host
-v /etc/machine-id:/etc/machine-id
# highlight-end
evcc/evcc:latest
```

Setze den Netzwerkmodus auf `host`.
Der SMA Sunny Home Manager benötigt eine eindeutige Geräte-ID.
Unter Linux kannst du `machine-id` in den Container mounten.
Alternativ kannst du in der `evcc.yaml` auch eine ID im `plant` Parameter hinterlegen.

---
```sh
sudo docker run -d --name evcc \
-v /home/user/evcc.yaml:/etc/evcc.yaml \
-v /home/user/.evcc:/root/.evcc \
-p 7070:7070 \
-p 8887:8887 \
# highlight-start
-p 9522:9522/udp \
-p 4712:4712 \
--network host
-v /etc/machine-id:/etc/machine-id
# highlight-end
evcc/evcc:latest
```

Setze den Netzwerkmodus auf `host`.
Der SMA Sunny Home Manager benötigt eine eindeutige Geräte-ID.
Unter Linux kannst du `machine-id` in den Container mounten.
Alternativ kannst du in der `evcc.yaml` auch eine ID im `plant` Parameter hinterlegen.

---

</TabItem>
</Tabs>

Expand Down Expand Up @@ -195,7 +196,7 @@ Entsprechend der passenden Komponenten-Konstellation kopiert man eine der folgen
<TabItem value="default" label="Standard" default>

```yaml
version: '3'
version: "3"
services:
evcc:
command:
Expand All @@ -209,13 +210,15 @@ services:
- /home/user/evcc.yaml:/etc/evcc.yaml
- /home/user/.evcc:/root/.evcc
restart: unless-stopped
# optional:
#user: <UID>:<GID>
```

</TabItem>
<TabItem value="sma" label="SMA Geräte und EEBus">

```yaml
version: '3'
version: "3"
services:
evcc:
command:
Expand All @@ -234,6 +237,8 @@ services:
- /var/lib/dbus/machine-id:/var/lib/dbus/machine-id
network_mode: host
restart: unless-stopped
# optional:
#user: <UID>:<GID>
```

</TabItem>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,21 +28,21 @@ You need an `evcc.yaml` configuration file for your components (meters, wallbox,
There are several ways to create this:

1. **Assistant on another system:** Run `evcc configure` beforehand on a [Linux](./linux), [macOS](./macos) or [Windows](./windows) system.
Use the created `evcc.yaml` file for your Docker installation.
Use the created `evcc.yaml` file for your Docker installation.

2. **Manual:** Create the `evcc.yaml` manually.
You can find instructions under [Configuration](./configuration).
You can find instructions under [Configuration](./configuration).

3. **Assistant in Docker:**
Handy if you have Docker installed on a Linux system.
Create an empty `evcc.yaml` file and run the configuration assistant directly in Docker.
Follow the assistant's questions.
At the end, the configuration will be written to the created `evcc.yaml` file.
Handy if you have Docker installed on a Linux system.
Create an empty `evcc.yaml` file and run the configuration assistant directly in Docker.
Follow the assistant's questions.
At the end, the configuration will be written to the created `evcc.yaml` file.

```sh
touch evcc.yaml
docker run -v $(pwd)/evcc.yaml:/app/evcc.yaml -it evcc/evcc:latest evcc configure
```
```sh
touch evcc.yaml
docker run -v $(pwd)/evcc.yaml:/app/evcc.yaml -it evcc/evcc:latest evcc configure
```

### Volumes

Expand Down Expand Up @@ -71,22 +71,22 @@ Here are the relevant details you need to enter:

#### Volume Mounts {#volumes}

| Host Path | Container Path | Description |
|------------------------|------------------|--------------------------------|
| `/home/user/evcc.yaml` | `/etc/evcc.yaml` | Configuration file |
| `/home/user/.evcc/` | `/root/.evcc` | Directory for internal database|
| Host Path | Container Path | Description |
| ---------------------- | ---------------- | ------------------------------- |
| `/home/user/evcc.yaml` | `/etc/evcc.yaml` | Configuration file |
| `/home/user/.evcc/` | `/root/.evcc` | Directory for internal database |

#### Ports {#ports}

| Host Port | Container Port | Description | Optional |
|-----------|----------------|-------------------------|----------|
| 7070 | 7070/tcp | Web UI, API | |
| 8887 | 8887/tcp | OCPP Server | Yes |
| 9522 | 9522/udp | SMA Sunny Home Manager | Yes |
| 7090 | 7090/udp | KEBA Chargers | Yes |
| 5353 | 5353/udp | mDNS | Yes |
| 4712 | 4712/tcp | EEBus | Yes |
| 8899 | 8899/udp | Modbus UDP | Yes |
| Host Port | Container Port | Description | Optional |
| --------- | -------------- | ---------------------- | -------- |
| 7070 | 7070/tcp | Web UI, API | |
| 8887 | 8887/tcp | OCPP Server | Yes |
| 9522 | 9522/udp | SMA Sunny Home Manager | Yes |
| 7090 | 7090/udp | KEBA Chargers | Yes |
| 5353 | 5353/udp | mDNS | Yes |
| 4712 | 4712/tcp | EEBus | Yes |
| 8899 | 8899/udp | Modbus UDP | Yes |

Open your system's Docker UI and create a new container with the above settings and start it.

Expand Down Expand Up @@ -145,6 +145,7 @@ On Linux, you can mount `machine-id` into the container.
Alternatively, you can specify an ID in the `plant` parameter in `evcc.yaml`.

---

</TabItem>
</Tabs>

Expand Down Expand Up @@ -178,6 +179,8 @@ services:
- /home/user/evcc.yaml:/etc/evcc.yaml
- /home/user/.evcc:/root/.evcc
restart: unless-stopped
# optional:
#user: <UID>:<GID>
```

</TabItem>
Expand All @@ -202,6 +205,8 @@ services:
- /var/lib/dbus/machine-id:/var/lib/dbus/machine-id
network_mode: host
restart: unless-stopped
# optional:
#user: <UID>:<GID>
```

</TabItem>
Expand All @@ -212,7 +217,6 @@ The above example only uses basic ports.
Please refer to the [Ports](#ports) section and add additional ports as needed.
:::

Start the container with:

```sh
Expand Down