Wikibase/Údržba

This page is a translated version of the page Wikibase/Maintaining and the translation is 100% complete.

Údržba instance Wikibase

Na této stránce najdete několik zdrojů, které vám pomohou získat přehled o vaší instanci Wikibase a pomohou vám ji udržovat zdravou a aktuální.

Přehled architektury

Nejprve se podívejte na naši tabulku a schéma:

Nástroje Docker

Nejlepší nástroje pro správu instalace Dockeru jsou ty, které jste použili k jejímu spuštění: docker a docker compose. Tato příručka nemůže nahradit uzemnění v Dockeru, takže se podívejte na odkazy na vlastní příkazy Dockeru pro docker compose a docker engine.

To znamená, že zde jsou některé startovací příkazy, které by se mohly hodit.

Než začnete

  • Názvy kontejnerů vytvořené pomocí docker compose začínají základním názvem adresáře, ve kterém byly vytvořeny při prvním vyvolání docker compose up. Níže uvedené příklady názvů kontejnerů začínají wbdocker_, protože příklady byly spuštěny v adresáři s názvem wbdocker.
  • Od roku 2023 byl docker-compose (s pomlčkou) jako samostatný příkaz zastaralý ve prospěch docker compose (bez pomlčky), což je argument hlavního příkazu docker.
  • Níže uvedené příkazy vynechávají výslovnou zmínku o docker-compose.yml a předpokládají, že jste použili metodu minimální instalace. Pokud jste použili metodu extended install, budete muset zadat každý konfigurační soubor, který má být zahrnut, a přidat -f docker-compose.yml -f docker-compose.extra.yml ke každému vyvolání docker compose.

Získejte příkazový shell na kontejneru

Nebudete jej potřebovat pro typickou aktivitu Wikibase, ale pro začátečníky Docker je zde jeden velmi užitečný příkaz, který se připojí k běžícímu kontejneru:

docker exec -it <container name> bash

Zkopírujte soubor do místního adresáře

docker cp wbdocker_wikibase_1:/var/www/html/LocalSettings.php LocalSettings.php

Funguje to i v opačném směru a tato kombinace je užitečná například pro získání souboru LocalSettings.php, jeho úpravy a vložení zpět.

docker cp LocalSettings.php wbdocker_wikibase_1:/var/www/html/LocalSettings.php 

Přečtěte si vynikající příspěvek na blogu Adama Shorlanda, kde najdete další podrobnosti o úpravách souborů v kontejnerech.

Zastavte kontejnery Docker

Tento příkaz zastaví kontejnery Docker a ponechá stroje (a samozřejmě všechna data) nedotčené:

docker compose stop

Jak si dokážete představit, můžete použít docker compose start k jejich opětovnému spuštění.

Odstraňte kontejnery při zachování dat

Tento příkaz odstraní kontejnery, ale zachová všechna data v MySQL, MediaWiki a dotazovací službě ve svazcích Docker.

docker compose down --remove-orphans

Smazat vše

  Varování: Tento příkaz odstraní VŠECHNA data, která jste kdy přidali do instalace Dockeru, včetně MediaWiki, Wikibase, Elasticsearch a databáze MySQL. Z toho už není návratu!

docker compose down --volumes

Protokoly

Každá aplikace v clusteru Wikibase má svůj vlastní protokolový výstup. Prostudujte si vlastní dokumentaci každé služby a zjistěte, jak číst její protokoly.

V adresáři, kam jste umístili soubor docker-compose.yml, spusťte příkaz docker compose logs a název služby (podívejte se na tabulku výše), abyste viděli její protokoly. Například:

user@host:~/docker$ docker compose logs  -f --tail=100 mysql
mysql_1 | 2019-12-31 10:00:00+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server started.
mysql_1 | 2019-12-31 10:00:00+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
...

Zálohování a obnovení

Data ve vaší instanci Wikibase jsou cenná. Co by se stalo kdyby vaše datové centrum shořelo? Jak dlouho by trvala přestavba? Pravidelné zálohování a testovaná obnova dat jsou životně důležité.

Obecně platí, že zálohovat budete muset dva soubory dat: souborový systém MediaWiki/Wikibase a co je důležitější, databáze MySQL. Nejprve a především doporučujeme přečíst si Instalační dokument Wikibase Docker, abyste získali přehled o zemi.

Úroveň Dockeru

Protože se jedná o instalaci Dockeru, doporučujeme zálohování pomocí nástrojů Docker.

Zálohování na úrovni Dockeru je podrobně vysvětleno zde. Zahrnuje zálohování Dockeru [svazky https://docs.docker.com/storage/volumes/] a vyprázdnění databáze s mysqldump.

Pro užitečný přehled zálohování a obnovy dat Docker, včetně použití příkazů docker save a docker load, si přečtěte tento vynikající příspěvek StackOverflow. Od svého původního zveřejnění v roce 2014 byl několikrát aktualizován a představuje skvělou prohlídku a výchozí bod pro odkaz na příkazový řádek dockeru, který je uveden výše.

Úroveň kontejneru

Zálohování na úrovni kontejneru není snadný návrh. Pokrýváme to zde hlavně proto, abychom představili úplnější obrázek MediaWiki a Wikibase pod pokličkou.

Za tímto účelem si přečtěte dokumentaci k Příručka:Zálohování wiki a mějte na paměti, že práci je třeba provést z kontejnerů (viz Docker tooling výše) a data extrahovat a umístit na bezpečné místo mimo Docker.

Nástroje wiki

Wikibase je rozšíření MediaWiki. Velká část funkcí, se kterými budete pracovat, je ve skutečnosti funkcí MediaWiki, takže se podívejte na Manuál:Obsah a Rozcestník pro správce wikiserverů . Zvláštní poznámka:

Aktualizace

Udržování softwaru v aktuálním stavu je jediný způsob, jak získat nové funkce, nemluvě o tom, jak důležité je používat opravy chyb a zabezpečení.

Chcete-li aktualizovat Wikibase na Dockeru, přečtěte si naši dokumentaci k aktualizaci. [permalink]

Aktualizace ruční instalace Wikibase suite není tak přímočará: zahrnuje upgrade samotné MediaWiki (viz dokumentace k aktualizaci MediaWiki) a poté jednotlivých softwarových komponent.