Dem github-Leitfaden gefolgt, vps. Helfen Sie mir, RAM/vCPU-Limits anzuwenden

Dies ist eine Antwort von ask.discourse.org. Bitte berichten Sie über ihre Nützlichkeit.


1. Festlegen persistenter CPU- und RAM-Limits für Discourse Docker

Wenn Discourse auf einem VPS über die offizielle GitHub-Anleitung installiert wird, sind Ressourcenlimits wie --memory und --cpus standardmäßig nicht enthalten. Sie können zwar manuell solche Flags zum Docker-Run-Befehl hinzufügen, aber alle Änderungen, die direkt mit docker stop und einem neuen docker run vorgenommen werden, gehen nach der Ausführung von ./launcher rebuild app verloren. Das Launcher-Skript erstellt den Container immer neu.

Empfohlene Ansätze:

a) Modifikation des Launcher-Skripts
Um Ressourcenlimits persistent durchzusetzen, müssen Sie das launcher-Skript ändern, das Discourse zum Starten von Docker-Containern verwendet. Passen Sie beispielsweise in der Nähe von Zeile 289 an:

$docker_path run $restart_policy "${env[@]}" -h "`hostname`-$config" \
    -m="4g" --cpus="2.0" -e DOCKER_HOST_IP=$docker_ip ...

Dies stellt sicher, dass jeder ./launcher rebuild den Container mit Ihren Limits erstellt.

Quelle und weitere Informationen:

b) Direkte Bearbeitung des Docker-Befehls
Obwohl es technisch möglich ist, Docker mit benutzerdefinierten Limits auszuführen, indem Sie Ihren neu erstellten docker run-Befehl kopieren, ist dies nicht persistent und wird nicht empfohlen.

Es gibt noch keine offizielle, persistente “integrierte” Methode, um Docker --memory- oder --cpus-Argumente für die Standardbereitstellungstools von Discourse zu übergeben, außer durch Modifikation des Launchers.


2. Container-Name

Standardmäßig benennt der Discourse-Launcher den Container app. Sie können dies mit docker ps überprüfen. Das Ändern des Containernamens würde ebenfalls erfordern, den Launcher oder die Vorlagen direkt zu ändern.
Lesen Sie mehr: Discourse in einem Docker-Container


Nützliche Links


Wenn Sie nach einer eleganteren und persistenten Methode suchen (wie eine Vorlage oder eine unterstützte Launcher-Funktion), lesen Sie diese verwandte Diskussion:
Schalter für ressourcenbeschränkte VPS?

1 „Gefällt mir“