Ich arbeite seit mehr als einem Jahr in der Vorproduktionsumgebung, daher werde ich es hier aufzeichnen und teilen.
Wenn wir mehrere verschiedene Projekte auf mehreren Servern bereitstellen müssen, benötigen wir zentralisierte Konfigurationsinformationsverwaltungs- und Synchronisierungstools. Die in Betracht gezogenen Lösungen sind:
Dateien mit rsync synchronisieren.env
: Die Konfiguration mehrerer Projekte ist etwas umständlich und erfordert SSH zum Server, um sie zu ändern und dann zu synchronisieren
Verwenden Sie Docker: Die Clusterbereitstellung ist bequemer. Sie können die grafische Oberfläche zum Ändern von Umgebungsvariablen verwenden, aber das Aktualisieren von Umgebungsvariablen erfordert einen Neustart des Containers. Die meisten Projekte wurden nicht auf Docker migriert
consul agent -server -bootstrap -ui -bind <ip>
beitreten. consul agent -join <ip>
# put 设置一个KV对 consul kv put APP_DEBUG false # get 获取 consul kv get APP_DEBUG # exprot 导出JSON consul kv export > data.json # import 导入JSON consul kv import @data.json # delete 删除 consul kv delete APP_DEBUG
erreicht werden. Beispielsweise verwenden wir ein Verzeichnis wie /
, um alle Konfigurationen eines Projekts zu speichern. configs/<app_name>/
zu schreiben. .env
): .env.tpl
{{ range ls "configs/crm" }} {{ .Key }}={{ .Value }}{{ end }}
KV-Verzeichnis zu durchlaufen und das config/crm
-Format zu generieren. key=value
## 格式: 模板文件:目标文件:更新后执行的命令 consul-template --template \ /path/to/.env.tpl:/path/to/.env:'php /path/to/artisan config:cache'
Interpretation des Laravel Service Containers (IocContainer)
Laravel-Benutzerauthentifizierungssystem (Grundlegende Einführung)
Das Laravel WeChat-Applet erhält Benutzerdetails und eine Analyse der Applet-Code-Erweiterung mit Parametern
Das obige ist der detaillierte Inhalt vonEinführung in die Konfiguration der Verwendung von Consul zur Verwaltung von Laravel-Projekten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!