1
0
mirror of https://github.com/mailcow/mailcow-dockerized.git synced 2026-01-08 06:29:23 +00:00

dovecot: replace solr fts with flatcurve (xapian) (#5680)

* fts-flatcurve: inital implementation

* fts: removed solr from compose.yml

* flatcurve: added heap and proc logic to dovecot

* added logic for update.sh & generate for Flatcurve

* delete old iteration of fts-flatcurve.conf

* updated default fts.conf

* updated .gitignore to exclude fts.conf for further git updates

* Remove autogeneration of fts.conf (disable override)

* cleanup all left solr stuff

* renamed SKIP_FLATCURVE to SKIP_FTS

* cleanup leftovers solr in lang files

* moved lazy_expunge plugin only to mail_plugins

* added fts timeout value

* compose: remove dev image of dovecot

* updated japanese translation
This commit is contained in:
Niklas Meyer
2024-12-12 16:44:42 +01:00
committed by GitHub
parent b087ac9e27
commit 3e8bb06a37
43 changed files with 467 additions and 862 deletions

View File

@@ -5415,12 +5415,6 @@ paths:
started_at: "2019-12-22T20:59:58.382274592Z"
state: running
type: info
solr-mailcow:
container: solr-mailcow
image: "mailcow/solr:1.7"
started_at: "2019-12-22T20:59:59.635413798Z"
state: running
type: info
unbound-mailcow:
container: unbound-mailcow
image: "mailcow/unbound:1.10"
@@ -5442,30 +5436,6 @@ paths:
hey where started and a few other details.
operationId: Get container status
summary: Get container status
/api/v1/get/status/solr:
get:
responses:
"401":
$ref: "#/components/responses/Unauthorized"
"200":
content:
application/json:
examples:
response:
value:
solr_documents: null
solr_enabled: false
solr_size: null
type: info
description: OK
headers: {}
tags:
- Status
description: >-
Using this endpoint you can get the status of all containers and when
hey where started and a few other details.
operationId: Get solr status
summary: Get solr status
/api/v1/get/status/vmail:
get:
responses:

View File

@@ -8,7 +8,6 @@ if (!isset($_SESSION['mailcow_cc_role']) || $_SESSION['mailcow_cc_role'] != "adm
require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/header.inc.php';
$_SESSION['return_to'] = $_SERVER['REQUEST_URI'];
$solr_status = (preg_match("/^([yY][eE][sS]|[yY])+$/", $_ENV["SKIP_SOLR"])) ? false : solr_status();
$clamd_status = (preg_match("/^([yY][eE][sS]|[yY])+$/", $_ENV["SKIP_CLAMD"])) ? false : true;
@@ -25,7 +24,6 @@ $vmail_df = explode(',', (string)json_decode(docker('post', 'dovecot-mailcow', '
// containers
$containers_info = (array) docker('info');
if ($clamd_status === false) unset($containers_info['clamd-mailcow']);
if ($solr_status === false) unset($containers_info['solr-mailcow']);
ksort($containers_info);
$containers = array();
foreach ($containers_info as $container => $container_info) {
@@ -69,8 +67,6 @@ $template_data = [
'timezone' => $timezone,
'gal' => @$_SESSION['gal'],
'license_guid' => license('guid'),
'solr_status' => $solr_status,
'solr_uptime' => round($solr_status['status']['dovecot-fts']['uptime'] / 1000 / 60 / 60),
'clamd_status' => $clamd_status,
'containers' => $containers,
'ip_check' => customize('get', 'ip_check'),

View File

@@ -2908,50 +2908,6 @@ function getGUID() {
.substr($charid,16, 4).$hyphen
.substr($charid,20,12);
}
function solr_status() {
$curl = curl_init();
$endpoint = 'http://solr:8983/solr/admin/cores';
$params = array(
'action' => 'STATUS',
'core' => 'dovecot-fts',
'indexInfo' => 'true'
);
$url = $endpoint . '?' . http_build_query($params);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 0);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
$response_core = curl_exec($curl);
if ($response_core === false) {
$err = curl_error($curl);
curl_close($curl);
return false;
}
else {
curl_close($curl);
$curl = curl_init();
$status_core = json_decode($response_core, true);
$url = 'http://solr:8983/solr/admin/info/system';
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 0);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
$response_sysinfo = curl_exec($curl);
if ($response_sysinfo === false) {
$err = curl_error($curl);
curl_close($curl);
return false;
}
else {
curl_close($curl);
$status_sysinfo = json_decode($response_sysinfo, true);
$status = array_merge($status_core, $status_sysinfo);
return (!empty($status['status']['dovecot-fts']) && !empty($status['jvm']['memory'])) ? $status : false;
}
return (!empty($status['status']['dovecot-fts'])) ? $status['status']['dovecot-fts'] : false;
}
return false;
}
function cleanupJS($ignore = '', $folder = '/tmp/*.js') {
$now = time();

View File

@@ -5434,25 +5434,6 @@ function mailbox($_action, $_type, $_data = null, $_extra = null) {
'msg' => 'Could not move maildir to garbage collector: variables local_part and/or domain empty'
);
}
if (strtolower(getenv('SKIP_SOLR')) == 'n' && strtolower(getenv('FLATCURVE_EXPERIMENTAL')) != 'y') {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://solr:8983/solr/dovecot-fts/update?commit=true');
curl_setopt($curl, CURLOPT_HTTPHEADER,array('Content-Type: text/xml'));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, '<delete><query>user:' . $username . '</query></delete>');
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
$response = curl_exec($curl);
if ($response === false) {
$err = curl_error($curl);
$_SESSION['return'][] = array(
'type' => 'warning',
'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
'msg' => 'Could not remove Solr index: ' . print_r($err, true)
);
}
curl_close($curl);
}
$stmt = $pdo->prepare("DELETE FROM `alias` WHERE `goto` = :username");
$stmt->execute(array(
':username' => $username

View File

@@ -1628,23 +1628,6 @@ if (isset($_GET['query'])) {
);
echo json_encode($temp, JSON_UNESCAPED_SLASHES);
break;
case "solr":
$solr_status = solr_status();
$solr_size = ($solr_status['status']['dovecot-fts']['index']['size']);
$solr_documents = ($solr_status['status']['dovecot-fts']['index']['numDocs']);
if (strtolower(getenv('SKIP_SOLR')) != 'n') {
$solr_enabled = false;
}
else {
$solr_enabled = true;
}
echo json_encode(array(
'type' => 'info',
'solr_enabled' => $solr_enabled,
'solr_size' => $solr_size,
'solr_documents' => $solr_documents
));
break;
case "host":
if (!$extra){
$stats = docker("host_stats");

View File

@@ -521,7 +521,6 @@
"external_logs": "Externí logy",
"history_all_servers": "Záznam (všechny servery)",
"in_memory_logs": "Logy v paměti",
"jvm_memory_solr": "Spotřeba paměti JVM",
"last_modified": "Naposledy změněn",
"log_info": "<p><b>Logy v paměti</b> jsou shromažďovány v Redis seznamech a jsou oříznuty na LOG_LINES (%d) každou minutu, aby se nepřetěžoval server.\r\n <br>Logy v paměti nemají být trvalé. Všechny aplikace, které logují do paměti, zároveň logují i do Docker služby podle nastavení logging driveru.\r\n <br>Logy v paměti lze použít pro ladění drobných problémů s kontejnery.</p>\r\n <p><b>Externí logy</b> jsou shromažďovány pomocí API dané aplikace.</p>\r\n <p><b>Statické logy</b> jsou většinou logy činností, které nejsou zaznamenávány do Docker služby, ale přesto je dobré je schraňovat (výjimkou jsou logy API).</p>",
"login_time": "Čas",
@@ -530,8 +529,6 @@
"restart_container": "Restartovat",
"service": "Služba",
"size": "Velikost",
"solr_dead": "Solr se spouští, je vypnutý nebo spadl.",
"solr_status": "Stav Solr",
"started_at": "Spuštěn",
"started_on": "Spuštěno",
"static_logs": "Statické logy",

View File

@@ -444,12 +444,9 @@
"external_logs": "Eksterne logfiler",
"history_all_servers": "Historie (alle servere)",
"in_memory_logs": "In-memory logs",
"jvm_memory_solr": "Brug af JVM-hukommelse",
"log_info": "<p>mailcow <b>in-memory logs</b> er samlet i Redis-lister og trimmet til LOG_LINES (%d) hvert minut for at reducere hamring.\r\n <br>Logbøger i hukommelsen er ikke beregnet til at være vedholdende. Alle applikationer, der logger ind i hukommelsen, logger også på Docker-dæmonen og derfor til standardlogdriveren.\r\n <br>Logtypen i hukommelsen skal bruges til fejlfinding af mindre problemer med containere.</p>\r\n <p><b>Eksterne logfiler</b> indsamles via API for den givne applikation.</p>\r\n <p><b>Statiske logfiler</b> er for det meste aktivitetslogfiler, der ikke er logget på Dockerd, men stadig skal være vedholdende (undtagen API-logfiler).</p>",
"logs": "Logs",
"restart_container": "Genstart",
"solr_dead": "Solr starter, deaktiveres eller døde.",
"solr_status": "Solr-status",
"started_on": "Startede den",
"static_logs": "Statiske logfiler",
"system_containers": "System og Beholdere",

View File

@@ -539,7 +539,6 @@
"external_logs": "Externe Logs",
"history_all_servers": "History (alle Server)",
"in_memory_logs": "In-memory Logs",
"jvm_memory_solr": "JVM-Speicherauslastung",
"last_modified": "Zuletzt geändert",
"log_info": "<p>mailcow <b>in-memory Logs</b> werden in Redis Listen gespeichert, die maximale Anzahl der Einträge pro Anwendung richtet sich nach LOG_LINES (%d).\r\n <br>In-memory Logs sind vergänglich und nicht zur ständigen Aufbewahrung bestimmt. Alle Anwendungen, die in-memory protokollieren, schreiben ebenso in den Docker Daemon.\r\n <br>Das in-memory Protokoll versteht sich als schnelle Übersicht zum Debugging eines Containers, für komplexere Protokolle sollte der Docker Daemon konsultiert werden.</p>\r\n <p><b>Externe Logs</b> werden via API externer Applikationen bezogen.</p>\r\n <p><b>Statische Logs</b> sind weitestgehend Aktivitätsprotokolle, die nicht in den Docker Daemon geschrieben werden, jedoch permanent verfügbar sein müssen (ausgeschlossen API Logs).</p>",
"login_time": "Zeit",
@@ -550,8 +549,6 @@
"service": "Dienst",
"show_ip": "Zeige öffentliche IP",
"size": "Größe",
"solr_dead": "Solr startet, ist deaktiviert oder temporär nicht erreichbar.",
"solr_status": "Solr Status",
"started_at": "Gestartet am",
"started_on": "Gestartet am",
"static_logs": "Statische Logs",

View File

@@ -539,7 +539,6 @@
"external_logs": "External logs",
"history_all_servers": "History (all servers)",
"in_memory_logs": "In-memory logs",
"jvm_memory_solr": "JVM memory usage",
"last_modified": "Last modified",
"log_info": "<p>mailcow <b>in-memory logs</b> are collected in Redis lists and trimmed to LOG_LINES (%d) every minute to reduce hammering.\r\n <br>In-memory logs are not meant to be persistent. All applications that log in-memory, also log to the Docker daemon and therefore to the default logging driver.\r\n <br>The in-memory log type should be used for debugging minor issues with containers.</p>\r\n <p><b>External logs</b> are collected via API of the given application.</p>\r\n <p><b>Static logs</b> are mostly activity logs, that are not logged to the Dockerd but still need to be persistent (except for API logs).</p>",
"login_time": "Time",
@@ -550,8 +549,6 @@
"service": "Service",
"show_ip": "Show public IP",
"size": "Size",
"solr_dead": "Solr is starting, disabled or died.",
"solr_status": "Solr status",
"started_at": "Started at",
"started_on": "Started on",
"static_logs": "Static logs",

View File

@@ -346,12 +346,10 @@
"log_info": "<p>Los <b>logs en memoria</b> son recopilados en listas de Redis y recortados a LOG_LINES (%d) cada minuto para prevenir sobrecarga en el sistema.\r\n <br>Los logs en memoria no están destinados a ser persistentes. Todas las aplicaciones que logean a la memoria, también logean en el daemon de Docker y, por lo tanto, en el controlador de registro predeterminado.\r\n El log en memoria se debe utilizar para analizar problemas menores con los contenedores.</p>\r\n <p>Los <b>logs externos</b> se recopilan a través de la API de la aplicación dada.</p>\r\n <p>Los <b>logs estáticos</b> son principalmente registros de actividad, que no están registrados en Dockerd pero que aún deben ser persistentes (excepto los registros de API).</p>",
"logs": "Logs",
"restart_container": "Reiniciar",
"solr_dead": "Solr está empezando, deshabilitado o caído.",
"docs": "Docs",
"last_modified": "Última modificación",
"size": "Tamaño",
"started_at": "Iniciado el",
"solr_status": "Solr status",
"uptime": "Uptime",
"static_logs": "Logs estáticos",
"system_containers": "Sistema y Contenedores"

View File

@@ -380,16 +380,13 @@
"disk_usage": "Levyn käyttö",
"external_logs": "Ulkoiset loki",
"in_memory_logs": "Muistissa olevat lokit",
"jvm_memory_solr": "JVM-muistin käyttö",
"log_info": "<p>mailcow <b>muistissa olevat lokit</b> kerätään Redis-luetteloihin ja leikataan LOG_LINES (%d) joka minuutti lyömisen vähentämiseksi.\r\n <br>Muistissa olevien lokien ei ole tarkoitus olla pysyviä. Kaikki sovellukset, jotka kirjautuvat muistiin, kirjautuvat myös Docker-daemoniin ja siten oletusarvoiseen lokitiedostoon.\r\n <br>Muistin lokityyppiä olisi käytettävä virheiden virheenkorjaukseen säilöissä.</p>\r\n <p><b>Ulkoiset lokit</b> kerätään annetun sovelluksen API: n kautta.</p>\r\n <p><b>Staattiset lokit</b> ovat useimmiten toimintalokkeja, joita ei kirjata Dockerdiin, mutta joiden on silti oltava pysyviä (paitsi API-lokit).</p>",
"logs": "Logit tausta palveluista",
"restart_container": "Uudelleen käynnistä",
"solr_dead": "Solr käynnistyy, on poissa käytöstä tai kuoli.",
"docs": "Docs",
"last_modified": "Viimeksi muokattu",
"size": "Koko",
"started_at": "Käynnistetty",
"solr_status": "Solr-tila",
"uptime": "Päällä",
"started_on": "Aloitettiin",
"static_logs": "Staattiset lokit",

View File

@@ -498,17 +498,14 @@
"external_logs": "Logs externe",
"history_all_servers": "Historique (tous les serveurs)",
"in_memory_logs": "Logs En-mémoire",
"jvm_memory_solr": "Utilisation mémoire JVM",
"log_info": "<p>Les logs <b>En-mémoire</b> Mailcow sont collectés dans des listes Redis et découpées en LOG_LINES (%d) chaque minute pour réduire la charge.\n <br>Les logs En-mémoire ne sont pas destinés à être persistants. Toutes les applications qui se connectent en mémoire, se connectent également au démon Docker, et donc au pilote de journalisation par défaut.\n <br>Le type de journal en mémoire doit être utilisé pour déboguer les problèmes mineurs avec les conteneurs.</p>\n <p><b>Les logs externes</b> sont collectés via l'API de l'application concernée.</p>\n <p>Les journaux <b>statiques</b> sont principalement des journaux dactivité, qui ne sont pas enregistrés dans Dockerd, mais qui doivent toujours être persistants (sauf pour les logs API).</p>",
"logs": "Logs",
"restart_container": "Redémarrer",
"solr_dead": "Solr est en cours de démarrage, désactivé ou mort.",
"docs": "Docs",
"last_modified": "Dernière modification",
"online_users": "Utilisateurs en ligne",
"size": "Taille",
"started_at": "Démarré à",
"solr_status": "Etat Solr",
"uptime": "Disponibilité",
"started_on": "Démarré à",
"static_logs": "Logs statiques",

View File

@@ -494,7 +494,6 @@
"external_logs": "Log esterni",
"history_all_servers": "Cronologia (tutti i server)",
"in_memory_logs": "In-memory logs",
"jvm_memory_solr": "JVM memory usage",
"last_modified": "Ultima modifica",
"log_info": "<p>mailcow <b>in-memory logs</b> are collected in Redis lists and trimmed to LOG_LINES (%d) every minute to reduce hammering.\r\n <br>In-memory logs are not meant to be persistent. All applications that log in-memory, also log to the Docker daemon and therefore to the default logging driver.\r\n <br>The in-memory log type should be used for debugging minor issues with containers.</p>\r\n <p><b>External logs</b> are collected via API of the given application.</p>\r\n <p><b>Static logs</b> are mostly activity logs, that are not logged to the Dockerd but still need to be persistent (except for API logs).</p>",
"login_time": "Orario",
@@ -503,8 +502,6 @@
"restart_container": "Riavvio",
"service": "Servizio",
"size": "Dimensione",
"solr_dead": "Solr sta partendo, è disabilitato o morto.",
"solr_status": "Stato Solr",
"started_at": "Iniziato alle",
"started_on": "Iniziato",
"static_logs": "Log statici",

View File

@@ -539,7 +539,6 @@
"external_logs": "外部ログ",
"history_all_servers": "履歴(すべてのサーバー)",
"in_memory_logs": "インメモリーログ",
"jvm_memory_solr": "JVMメモリ使用量",
"last_modified": "最終更新日時",
"log_info": "<p>mailcowの<b>インメモリーログ</b>はRedisリストに収集され、ハンマリングを軽減するために1分ごとにLOG_LINES (%d)にトリムされます。\r\n <br>インメモリーログは永続化を目的としたものではありません。インメモリーログを記録するすべてのアプリケーションは、Dockerデーモンとデフォルトのログドライバーにもログを記録します。\r\n <br>インメモリーログタイプは、コンテナの軽微な問題をデバッグするために使用してください。</p>\r\n <p><b>外部ログ</b>は指定されたアプリケーションのAPIを介して収集されます。</p>\r\n <p><b>静的ログ</b>は主にアクティビティログであり、Dockerdには記録されませんがAPIログを除く、永続化が必要です。</p>",
"login_time": "ログイン時間",
@@ -550,8 +549,6 @@
"service": "サービス",
"show_ip": "パブリックIPを表示",
"size": "サイズ",
"solr_dead": "Solrは起動中、無効化、または停止しました。",
"solr_status": "Solrのステータス",
"started_at": "開始時刻",
"started_on": "開始日",
"static_logs": "静的ログ",

View File

@@ -424,16 +424,13 @@
"external_logs": "External logs",
"history_all_servers": "History (all servers)",
"in_memory_logs": "In-memory logs",
"jvm_memory_solr": "JVM memory usage",
"log_info": "<p>mailcow <b>in-memory logs</b> are collected in Redis lists and trimmed to LOG_LINES (%d) every minute to reduce hammering.\r\n <br>In-memory logs are not meant to be persistent. All applications that log in-memory, also log to the Docker daemon and therefore to the default logging driver.\r\n <br>The in-memory log type should be used for debugging minor issues with containers.</p>\r\n <p><b>External logs</b> are collected via API of the given application.</p>\r\n <p><b>Static logs</b> are mostly activity logs, that are not logged to the Dockerd but still need to be persistent (except for API logs).</p>",
"logs": "Logs",
"restart_container": "Restart",
"solr_dead": "Solr is starting, disabled or died.",
"docs": "Docs",
"last_modified": "Last modified",
"size": "Size",
"started_at": "Started at",
"solr_status": "Solr status",
"uptime": "Uptime",
"started_on": "Started on",
"static_logs": "Static logs",

View File

@@ -643,7 +643,6 @@
"logs": "Žurnāli",
"architecture": "Arhitektūra",
"disk_usage": "Diska lietojums",
"jvm_memory_solr": "JVM atmiņas lietojums",
"memory": "Atmiņa",
"timezone": "Laika josla",
"uptime": "Darbošanās laiks"

View File

@@ -328,12 +328,10 @@
"update_available": "En oppdatering er tilgjengelig",
"service": "Tjeneste",
"show_ip": "Vis offentlig IP",
"solr_dead": "Solr starter, er deaktivert eller døde",
"memory": "Minne",
"online_users": "Tilkoblede brukere",
"restart_container": "Omstart",
"size": "Størrelse",
"solr_status": "Solr-status",
"started_at": "Startet ved",
"started_on": "Startet den",
"static_logs": "Statiske logger",

View File

@@ -472,17 +472,14 @@
"external_logs": "Externe logs",
"history_all_servers": "Geschiedenis (alle servers)",
"in_memory_logs": "Geheugenlogs",
"jvm_memory_solr": "JVM-geheugengebruik",
"log_info": "<p>Mailcows <b>geheugenlogs</b> worden elke minuut afgesneden naar maximaal %d regels (LOG_LINES) om de stabiliteit te garanderen.<br>Geheugenlogs zijn niet bedoeld om bewaard te blijven. Alle applicaties die geheugenlogs schrijven worden ook naar het Docker-proces gelogd.<br>De geheugenlogs kunnen gebruikt worden voor het oplossen van problemen met bepaalde containers.</p><p><b>Externe logs</b> worden verzameld door middel van de API van deze applicaties.</p><p><b>Statische logs</b> zijn activiteitenlogs die niet naar het Docker-proces worden gelogd, maar wel bewaard moeten blijven (uitgezonderd API-logs).</p>",
"logs": "Logs",
"restart_container": "Herstart",
"solr_dead": "Solr is uitgeschakeld, uitgevallen of nog bezig met opstarten.",
"docs": "Documenten",
"last_modified": "Voor het laatst bijgewerkt op",
"online_users": "Gebruikers online",
"size": "Grootte",
"started_at": "Opgestart op",
"solr_status": "Solr-status",
"uptime": "Uptime",
"started_on": "Gestart op",
"static_logs": "Statische logs",

View File

@@ -539,7 +539,6 @@
"external_logs": "Registros externos",
"history_all_servers": "Histórico (todos os servidores)",
"in_memory_logs": "Registros na memória",
"jvm_memory_solr": "Uso de memória JVM",
"last_modified": "Última modificação",
"log_info": "<p>Os <b>registros na memória do</b> mailcow são coletados em listas do Redis e reduzidos para LOG_LINES (%d) a cada minuto para reduzir o martelamento.\r\n Os <br>registros na memória não devem ser persistentes. Todos os aplicativos que fazem login na memória também fazem login no daemon do Docker e, portanto, no driver de registro padrão.\r\n </p><br>O tipo de registro na memória deve ser usado para depurar pequenos problemas com contêineres.\r\n <p>Os <b>registros externos</b> são coletados por meio da API do aplicativo em questão.</p>\r\n <p>Os <b>registros estáticos</b> são principalmente registros de atividades, que não são registrados no Dockerd, mas ainda precisam ser persistentes (exceto os registros da API).</p>",
"login_time": "Hora",
@@ -550,8 +549,6 @@
"service": "Serviço",
"show_ip": "Mostrar IP público",
"size": "Tamanho",
"solr_dead": "O Solr está iniciando, desativado ou morreu.",
"solr_status": "Status do solr",
"started_at": "Começou em",
"started_on": "Começou em",
"static_logs": "Registros estáticos",

View File

@@ -481,7 +481,6 @@
"external_logs": "Jurnale externe",
"history_all_servers": "Istoric (toate serverele)",
"in_memory_logs": "Jurnale din memorie",
"jvm_memory_solr": "Memorie utilizată de JVM",
"last_modified": "Ultima modificare",
"log_info": "<p><b>jurnalele din memorie</b> pentru mailcow sunt colectate în listele Redis și trimise la LOG_LINES (%d) în fiecare minut pentru a reduce ciocnirea.\n <br>Jurnalele din memorie nu sunt menite a fi persistente. Toate aplicațiile care înregistrează jurnale în memorie, înregistrează de asemenea jurnale în daemonul Docker și, prin urmare, în driverul de jurnale implicit.\n <br>Tipul de jurnal din memorie trebuie utilizat pentru depanarea problemelor minore cu containerele.</p>\n <p><b>Jurnalele externe</b> sunt colectate prin API-ul aplicației respective.</p>\n <p><b>Jurnalele statice</b> sunt, în majoritate, jurnale de activitate care nu sunt înregistrate în Docker, dar trebuie să fie persistente (cu excepția jurnalelor API).</p>",
"login_time": "Moment",
@@ -490,8 +489,6 @@
"restart_container": "Repornire",
"service": "Serviciu",
"size": "Mărime",
"solr_dead": "Solr începe, este invalid sau s-a oprit.",
"solr_status": "Stare Solr",
"started_at": "Pornit la",
"started_on": "Început pe",
"static_logs": "Jurnale statice",

View File

@@ -539,7 +539,6 @@
"external_logs": "Внешние журналы",
"history_all_servers": "История (все серверы)",
"in_memory_logs": "Журналы контейнеров",
"jvm_memory_solr": "Использовано оперативной памяти JVM",
"last_modified": "Последние изменения",
"log_info": "<p><b>Журналы контейнеров</b> mailcow сохраняются в Redis, и раз в минуту строки журнала за пределами <code>LOG_LINES (%d)</code> удаляются, чтобы уменьшить нагрузку на сервер.\r\n <br>Сами журналы контейнеров не сохраняются после перезагрузки контейнера. Все контейнеры дополнительно пишут логи в службу Docker, и, следовательно, используют драйвер логирования по умолчанию. Журналы контейнеров предусмотрены только для отладки мелких проблем. Для других задач, пожалуйста, настройте драйвер логирования Docker самостоятельно.</p>\r\n <p><b>Внешние журналы</b> собираются через API приложений.</p>\r\n <p><b>Статические журналы</b> &ndash; это, в основном, журналы активности, которые не записываются в Dockerd, но все равно должны быть постоянными (за исключением журналов API).</p>",
"login_time": "Время входа",
@@ -551,8 +550,6 @@
"service": "Сервис",
"show_ip": "Показать публичные IP-адреса",
"size": "Индексы занимают",
"solr_dead": "Solr не запущен. Если вы включили Solf в файле настроек <code>mailcow.conf</code> и это сообщение отображается более получаса, скорее всего Solr сломан.",
"solr_status": "Состояние Solr",
"started_at": "Запущен",
"started_on": "Запущен в",
"static_logs": "Статические журналы",

View File

@@ -501,12 +501,9 @@
"last_modified": "Nazadnje spremenjeno",
"history_all_servers": "Zgodovina (vsi strežniki)",
"in_memory_logs": "In-memory dnevniki",
"jvm_memory_solr": "JVM zasedenost spomina",
"service": "Servis",
"show_ip": "Prikaži javni IP",
"size": "Velikost",
"solr_dead": "Solr se zaganja, je onemogočen ali se je ustavil.",
"solr_status": "Status Solr",
"started_at": "Zagnano ob",
"started_on": "Zagnano na",
"static_logs": "Statični dnevniki",

View File

@@ -499,7 +499,6 @@
"external_logs": "Externé logy",
"history_all_servers": "História (všetky servery)",
"in_memory_logs": "Logy uložené v pamäti",
"jvm_memory_solr": "JVM spotreba pamäte",
"last_modified": "Naposledy upravené",
"log_info": "<b>Logy v pamäti</b> sú zbierané do Redis listu s max. limitom LOG_LINES (%d) riadkov každú minútu, čo bráni nadmernej záťaži servera.\r\n <br>Logy v pamäti nemajú trvalý charakter. Všetky aplikácie ktoré vedú logy v pamäti, tiež logujú do Docker démona a súčasne do nastaveného logging drivera.\r\n <br>Logy v pamäti sa môžu použiť na ladenie menších problémov s kontajnermi.</p>\r\n <p><b>Externé logy</b> sú zbierané cez API danej aplikácie.</p>\r\n <p><b>Statické logy</b> sú väčšinou aktivity, ktoré nie sú logované do Docker démona, ale musia byť trvalo zaznamenané (s výnimkou API záznamov).</p>",
"login_time": "Čas",
@@ -508,8 +507,6 @@
"restart_container": "Reštartovať",
"service": "Služba",
"size": "Veľkosť",
"solr_dead": "Solr štartuje, je vypnutý alebo nebeží.",
"solr_status": "Solr status",
"started_at": "Spustený",
"started_on": "Spustený",
"static_logs": "Statické logy",

View File

@@ -453,17 +453,14 @@
"external_logs": "Externa loggar",
"history_all_servers": "Historik (alla servrar)",
"in_memory_logs": "Loggar sparade i minnet",
"jvm_memory_solr": "JVM minnesanvändning",
"log_info": "<p>mailcow <b>loggar sparade i minnet</b> samlas in i Redis-listor och trimmas till LOG_LINES (%d) varje minut för att minska lasten.\r\n <br>Loggar sparade i minnet är inte tänkta att vara beständiga. Alla applikationer som loggar i minnet loggar också till Docker-demonen och därefter till standardrutinen för loggning.\r\n <br>Loggar sparade i minnet bör användas för felsökning av mindre problem med olika behållare.</p>\r\n <p><b>Externa loggar</b> samlas in via ett API på den givna applikationen.</p>\r\n <p><b>Statiska loggar</b> är mestadels aktivitetsloggar som inte är loggas i Docker, men som fortfarande måste vara beständiga (utom API-loggar).</p>",
"logs": "Loggar",
"restart_container": "Omstart",
"solr_dead": "Solr är i uppstart, har inaktiveras eller är tillfälligt avstängd.",
"online_users": "Användare online",
"docs": "Dokumentation",
"last_modified": "Senast ändrad",
"size": "Storlek",
"started_at": "Startades kl.",
"solr_status": "Solr status",
"uptime": "Upptid",
"started_on": "Startades",
"static_logs": "Statiska loggar",

View File

@@ -694,15 +694,12 @@
"external_logs": "Harici günlükler",
"history_all_servers": "Geçmiş (tüm sunucular)",
"in_memory_logs": "Bellek içi günlükler",
"jvm_memory_solr": "JVM bellek kullanımı",
"memory": "Hafıza",
"online_users": "Aktif kullanıcılar",
"restart_container": "Yeniden başlat",
"service": "Servis",
"show_ip": "Genel IP'yi göster",
"size": "Boyut",
"solr_dead": "Solr başlatılıyor, devre dışı bırakıldı veya öldü.",
"solr_status": "Solr durumu",
"started_at": "Başlangıç",
"system_containers": "Sistem ve Konteynerler",
"timezone": "Zaman Dilimi",

View File

@@ -503,8 +503,6 @@
"restart_container": "Перезапустити",
"service": "Сервіс",
"size": "Розмір індексів",
"solr_dead": "Solr запускається, відключений або сламаний.",
"solr_status": "Стан Solr",
"started_at": "Запущений",
"started_on": "Запущений у",
"static_logs": "Статичні журнали",
@@ -513,7 +511,6 @@
"uptime": "Час роботи",
"username": "Ім'я користувача",
"external_logs": "Зовнішні журнали",
"jvm_memory_solr": "Використання оперативної пам'яті JVM",
"log_info": "<p><b>Журнали контейнерів</b> mailcow зберігаються в Redis, і раз на хвилину рядки журналу за межами <code>LOG_LINES (%d)</code> видаляються, щоб зменшити навантаження на сервер.\n <br>Самі журнали контейнерів не зберігаються після перезавантаження контейнера. Усі контейнери додатково пишуть логи у службу Docker, і, отже, використовують драйвер логування за промовчанням. Журнали контейнерів призначені лише для налагодження дрібних проблем. Для інших завдань, будь ласка, настройте драйвер логування Docker самостійно.</p>\n <p><b>Зовнішні журнали</b> збираються через API програм.</p>\n <p><b>Статичні журнали</b> &ndash; це в основному журнали активності, які не записуються в Dockerd, але все одно повинні бути постійними (за винятком журналів API).</p>",
"error_show_ip": "Не вдалося розпізнати публічні IP-адреси",
"no_update_available": "Система працює на останній версії",

View File

@@ -505,7 +505,6 @@
"external_logs": "外部日志",
"history_all_servers": "历史 (所有服务器)",
"in_memory_logs": "内存日志",
"jvm_memory_solr": "JVM 内存使用",
"last_modified": "最后修改",
"log_info": "<p>Mailcow 的<b>内存日志</b>储存于 Redis 列表中,并且每分钟自动降低到 LOG_LINES (%d) 以减少错误。\r\n <br>内存日志不是为了持久化储存的,所有使用内存日志的应用同时也会写入日志到 Docker 的守护进程的默认日志驱动中。\r\n <br>内存日志应该用于分析 (Debug) 容器中不明显的问题。</p>\r\n <p><b>外部日志</b>通过相应应用提供的 API 收集。</p>\r\n <p><b>静态日志</b>大多数为不写入日志到 Docker ,但仍然需要被持久化的活动日志 (API 日志外的)。</p>",
"login_time": "时间",
@@ -514,8 +513,6 @@
"restart_container": "重启",
"service": "服务",
"size": "大小",
"solr_dead": "Solr 在启动中、已关闭或已停止。",
"solr_status": "Solr 状态",
"started_at": "开始于",
"started_on": "启动于",
"static_logs": "静态日志",

View File

@@ -505,7 +505,6 @@
"external_logs": "外部紀錄",
"history_all_servers": "歷史 (所有伺服器)",
"in_memory_logs": "記憶體紀錄",
"jvm_memory_solr": "JVM 記憶體使用量",
"last_modified": "上次修改時間",
"log_info": "<p>mailcow 的<b>記憶體紀錄</b>會被收集到 Redis 清單中並且每分鐘自動縮減到 LOG_LINES (%d) 以避免重複撞擊 (hammering) 造成的大量記錄。\r\n<br>記憶體紀錄並不會永久保存。所有記錄到記憶體的應用程式也會同時透過預設紀錄的驅動程式寫入紀錄到 Docker 常駐程式中。\r\n<br>記憶體紀錄是設計用來為容器中的小問題除錯的。</p>\r\n<p><b>外部紀錄</b>透過應用程式提供的 API 收集。</p>\r\n<p><b>靜態紀錄</b>大多為不寫入到 Dockerd但仍然需要被保存的活動紀錄 (API 紀錄除外)。</p>",
"login_time": "時間",
@@ -514,8 +513,6 @@
"restart_container": "重新啟動",
"service": "服務",
"size": "大小",
"solr_dead": "Solr 正在啟動,停用或已停止運行.",
"solr_status": "Solr 狀態",
"started_at": "啟動於",
"started_on": "啟動於",
"static_logs": "靜態紀錄",

File diff suppressed because one or more lines are too long