Um sicherzugehen, dass der Container ständig läuft und Ausfallzeiten minimiert wird die Restart Policie des Containers gesetzt:

|**Policie**|**Auswirkung**|
|---|---|
| **no** | Den Container nicht automatisch neu starten, wenn er beendet wird. Dies ist die Voreinstellung. |
| **on-failure[:max-retries]** |Neustart nur, wenn der Container mit einem Exit-Status ungleich Null beendet wird. Begrenzen Sie optional die Anzahl der Neustartversuche, die der Docker-Daemon unternimmt. |
| **always** | Der Container wird immer neu gestartet, unabhängig vom Exit-Status. Wenn Sie always angeben, versucht der Docker-Daemon, den Container unbegrenzt neu zu starten. Der Container wird auch immer beim Start des Daemons gestartet, unabhängig vom aktuellen Status des Containers. |
| **unless-stopped** | Der Container wird immer neu gestartet, unabhängig vom Exit-Status, auch beim Start des Daemons, außer wenn der Container in einen gestoppten Zustand versetzt wurde, bevor der Docker-Daemon gestoppt wurde. |

Es ist also sinnvoll, den Container mit der Restart Policie `always` oder `unless-stopped` via `--restart` zu starten damit der Container auch nach einem Ausfall sofort wieder gestartet wird.
In diesem Befehl:
```
docker run --detach --hostname <hostname> \
    --publish 443:443 --publish 80:80 --publish 22:22  \
    --name gitlab \
    --restart always \
    --volume /srv/gitlab/config:/etc/gitlab \
    --volume /srv/gitlab/logs:/var/log/gitlab \
    --volume /srv/gitlab/data:/var/opt/gitlab  \
    gitlab/gitlab-ce:latest
```
Ist die Restart Policie bereits als `always` definiert.
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence