# Thingsboard Instance reset

<p class="callout danger">Vor einem geplantem Serverneustart oder wiederherstellen eines Servers aus einem Backup, immer den Thingsboard Docker Container herunterfahren. Dann spart man sich die Instanzprobleme und damit diesen Artikel</p>

[https://github.com/thingsboard/thingsboard/issues/2221#issuecomment-560313339](https://github.com/thingsboard/thingsboard/issues/2221#issuecomment-560313339)

[https://github.com/thingsboard/thingsboard/issues/3008#issuecomment-650076578](https://github.com/thingsboard/thingsboard/issues/3008#issuecomment-650076578)

Bei folgender Thingsboard Fehlermeldung...

```
Terminating application due to critical License Error ACTIVE_INSTANCES_CAPACITY_EXCEEDED(104)
```

oder (siehe unten bei Hilfe zu Fehlercode 107)

```
License Error: INVALID_LICENSE_CHECK_SECRET(107) - Invalid secret request sequence number!
```

oder oder (siehe unten bei Hilfe zu Fehlercode 105)

```
License Error: INSTANCE_NOT_FOUND(105) - Instance not found!
```

... hat das Lizenzportal von Thingsboard erkannt, dass mehrere Instanzen versuchen, ein und die selbe Thingsboard Lizenz zu verwenden. Das kann zB passieren wenn Docker sich verschluckt hat und ein neuer Thingsboard Container gestartet wurde, obwohl der andere noch lief, oder wenn der Hostserver von einem Backup wiederhergestellt wurde.

1. TB docker container stoppen
2. im License portal [https://license.thingsboard.io](https://license.thingsboard.io) unter Subscriptions den Subscription Plan finden &gt; 'Manage instances':[![image.png](https://wiki.folkerts.it/uploads/images/gallery/2024-05/scaled-1680-/U29image.png)](https://wiki.folkerts.it/uploads/images/gallery/2024-05/U29image.png)
3. Instanz aus der aktuellen Lizenz deaktivieren: [![image.png](https://wiki.folkerts.it/uploads/images/gallery/2024-02/scaled-1680-/7iGimage.png)](https://wiki.folkerts.it/uploads/images/gallery/2024-02/7iGimage.png)
    
    <p class="callout info">in einigen Fällen reicht es bereits aus, die Instanz du deaktivieren. Falls nicht, weitermachen:</p>
4. in tb docker container mit bash gehen und /usr/share/thingsboard/bin/instance-license.data löschen:  
    `rm -f /usr/share/thingsboard/bin/instance-license.data`
5. tb docker container wieder starten

Danach legt TB eine neue Instanz an:

[![image.png](https://wiki.folkerts.it/uploads/images/gallery/2024-02/scaled-1680-/195image.png)](https://wiki.folkerts.it/uploads/images/gallery/2024-02/195image.png)

<p class="callout warning">Bei Fehlercode 107 bzw. 105</p>

Offizielles Thingsboard Video zu dem Thema:  
[https://www.youtube.com/watch?v=2khu3RP0TGE&amp;t=73s](https://www.youtube.com/watch?v=2khu3RP0TGE&t=73s)

Wenn Fehlercode 107 kommt, kann es sein, dass die instance-license.data nicht im vorgesehenen Ordner auffindbar ist. In diesem Fall müssen die Instanzen im Thingsboard Lizenzportal nicht nur deaktiviert, sondern ganz gelöscht werden. Das ist nicht weiter tragisch, weil die Instanzen bei jeder neuen Instanz automatisch angelegt werden, solange genügend 'instance counts', also Anzahl erlaubter gleichzeiter Instanzen, zur Verfügung stehen (in meinem Fall 1).

Wenn keine /usr/share/thingsboard/bin/instance-license.data aufzufinden ist, könnte es an folgender Zeile in der docker-compose.yaml liegen:

```
TB_LICENSE_INSTANCE_DATA_FILE: /data/license.data
```

[![image.png](https://wiki.folkerts.it/uploads/images/gallery/2024-05/scaled-1680-/19mimage.png)](https://wiki.folkerts.it/uploads/images/gallery/2024-05/19mimage.png)

Diese Zeile gibt einen alternativen Speicherort für die instance-license.data an. In dem Fall heißt das Kommando, um die hinterlegte Lizenz zu 'vergessen' im Docker Container also

```
rm -f /data/license.data
```

Man kann auch das TB\_LICENSE\_SECRET in ein absichtlich falsches ändern und dann wieder zurück in's richtige. Dann wird auch die license.data neu angelegt, allerdings ist license.data löschen viel einfacher und richtiger.