Search

Databázový server MySQL a Adminer přes Docker

Obsah

…aneb když si hraje velryba s delfínem. :-)

Mnohem jednodušší než řešit instalace balíčků jako je XAMPP, MAMP apod. je využít schopností Dockeru, díky kterému si můžeme zprovoznit MySQL server.

Pokud již máte Docker nainstalovaný, tak se ujistěte, že máte nejaktuálnější verzi (nevidíte tlačítko Update to latest)

Stažení a instalace Docker Desktop

Docker je možné stáhnout z následujícího odkazu https://www.docker.com/get-started. Po instalaci je vhodné počítač restartovat.

Spuštění kontejneru s MySQL databázovým serverem

Následně v oblíbené příkazové řádce zadáme příkaz:

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:latest

Nyní nám běží kontejner obsahující MySQL v nejaktuálnější verzi díky tagu „latest“ z předešlého příkazu.

Zprovoznění kontejneru s uživatelským rozhraním Adminer

Pro příjemnější práci s databázovým serverem využijeme uživatelské rozhraní Adminer, které naprogramoval Jakub Vrána

docker run --name adminer --link mysql:db -p 8080:8080 -d adminer:latest

Díky parametru link se nám propojí kontejner s názvem mysql a kontejner adminer jej bude síťově rozpoznávat jako db.

Parametr p pak slouží k namapování portu uvnitř kontejneru na port zvenčí, tedy hostitele. Jednouduše řečeno se jedná o zveřejnění portu kontejneru.

K rozhraní Adminer se pak připojíme prostřednictvím prohlížeče zadáním adresy http://localhost:8080.

Uživatelské jméno a heslo jsou root, pokud jste si při spouštění nenastavili jinak.

Nyní můžete velmi snadno pracovat s MySQL databázovým serverem.

PROBLÉM! Kontejnery se nespustily samy

Po aktualizaci operačního systému, Dockeru nebo z nějakého jiného důvodu se může stát, že se kontejnery vypnout. V tomto případě nám pomohou příkazy uvedené níže.

Pro výpis všech kontejnerů:

docker ps -a

Po zjištění názvu nebo lépe ID konkrétního kontejneru můžeme ručně kontejner spustit:

docker container start d7a73a9ecc9b

Kdyby nám náhodou některý kontejner překážel můžeme jej smazat:

docker container start d7a73a9ecc9b

Varianta přes docker-compose.yml

Vytvořte si adresář např. my-database a v něm soubor docker-compose.yml

do něj vložte:

version: '3.1'

services:

  adminer:
    image: adminer
    restart: always
    ports:
      - 8080:8080

  db:
    image: mysql:latest
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: root

Spusťte příkazovou řádku v adresáři se souborem docker-compose a zavolejte příkaz

docker-compose up -d

Pokud s MySQL začínaté tak doporučuji tutoriály na W3 schools.

Jedna odpověď

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Tato stránka používá Akismet k omezení spamu. Podívejte se, jak vaše data z komentářů zpracováváme..

Skip to content