opened image

Kaip įdiegti MariaDB Docker'e

Šiame straipsnyje mes aptarsime, kaip įdiegti MariaDB MySQL serverį Docker konteineryje ir pamatysime, kaip jį prijungti prie phpMyAdmin docker-compose, kurį įdiegėme straipsnyje Kaip įdiegti phpMyAdmin Docker.
 

Taigi, įdiegsime Docker. 

Kaip įprasta, atnaujiname OS paketus. 
 

apt update


Įdiegsime reikalingus paketus ir pridėsime naują saugyklą:

 

 

 

apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

 


Atnaujiname paketus su nauja saugykla:

 

 

 

 

apt update

 


Įdiegiame Docker.

 

 

 

 

apt-get install docker-ce docker-ce-cli containerd.io

 


Patikriname Docker versiją:

 

 

 

 

docker --version

 


Žiūrime būseną:

 

 

 

 

systemctl status docker

 



Jei jis neįsijungė, įjungiame:

 

 

 

 

systemctl start docker

 


Ir pridedame prie automatinio paleidimo.

 

 

 

 

systemctl enable docker

 


 

 

Įdiegiame Docker-Compose

 

 
curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose


Įdiegiame paleidimo teises failui docker-compose

 

 

 

chmod +x /usr/local/bin/docker-compose

 


Patikriname, ar Docker-Compose buvo įdiegtas:

 

 

 

 

docker-compose --version

 



Kaip matome, viskas gerai. Pereiname prie failo kūrimo Docker-Compose.

Kad ateityje būtų lengviau orientuotis, kur ir kas yra įdiegta, sukursime atskirą aplanką šiam projektui kataloge /home ir pereisime į jį.

 

 

 

 

mkdir /home/mariadb && cd /home/mariadb

 


Šiame vadove mes įdiegsime konkrečią MariaDB 10.8 versiją. Tačiau galite įdiegti jums reikalingą versiją iš prieinamų hub.docker.com svetainėje.

Norėdami sukurti failą docker-compose.yaml, pasinaudosime saugykla pagal nuorodą https://hub.docker.com/_/mariadb

Sukuriame failą docker-compose.yaml arba docker-compose.yml:

 

 

 

 

vim docker-compose.yaml

 


Ir pridėsime šį kodą:

 

 

 

version: '3.1'

services:
  mariadb:
    container_name: mariadb
    image: mariadb:10.8
    ports:
        - 3310:3306
    environment:
        MARIADB_USER: admin
        MARIADB_PASSWORD: your_password
        MARIADB_ROOT_PASSWORD: your_strong_pass
    restart: always



Kur:

mariadb: jūsų konteinerio pavadinimas;
image: mariadb:10.8: atvaizdas, iš kurio bus diegiama mariadb
ports: 3310:3306 - 3310 prievadas, kurį naudosime prisijungimui prie mariadb
restart:always  - nurodo, kad konteineris bus perkrautas, jei įvyks klaida arba serveris bus perkrautas
MARIADB_USER: naujo vartotojo sukūrimas, šiuo atveju tai yra admin;
MARIADB_PASSWORD: slaptažodis vartotojui admin;
MARIADB_ROOT_PASSWORD: šis slaptažodis bus nustatytas MariaDB supervartotojo root paskyrai.

Paleidžiame mūsų skriptą (tam reikia būti kataloge, kur sukurtas mūsų failas. Šiuo atveju tai /home/mariadb):

 

 

 

 

 

docker-compose up -d 

 


Laukiame, kol bus atsisiųsti atvaizdai ir diegimas.

Patikriname:

 

 

 

 

docker-compose ps

 


arba 

 

 

 

 

docker ps

 



Norėdami peržiūrėti žurnalus, naudokite komandą 

 

 

docker logs -f mariadb



Taip pat galite įdiegti tik docker:

 

 

 

docker run -d --name mariadb -e MARIADB_USER=admin -e MARIADB_PASSWORD=your_password -e MARIADB_ROOT_PASSWORD=your_strong_pass mariadb:10.8

 



Taip pat šią MariaDB 10.8 versiją galima įdiegti kartu su phpMyAdmin ir ją prijungti. Pažiūrėkime, kaip tai padaryti.

Redaguosime sukurtą docker-compose.yaml failą

 

 

 

 

vim docker-compose.yaml

 



Pridėsime žemiau šią konstrukciją:

 

 

 

version: '3.1'

services:
  mariadb:
    container_name: mariadb
    image: mariadb:10.8
    ports:
        - 3310:3306
    environment:
        MARIADB_USER: admin
        MARIADB_PASSWORD: your_password
        MARIADB_ROOT_PASSWORD: your_strong_pass
    restart: always

  phpmyadmin:
    image: phpmyadmin
    restart: always
    ports:
      - 8090:80
    environment:
      - PMA_HOST=mariadb
    depends_on:
      - mariadb

 


phpmyadmin  sektoriuje pridėjome phpmyadmin atvaizdą, nurodėme jam prievadą 8090, tačiau dabar jis bus prijungtas prie konkretaus duomenų bazės serverio, būtent to, kurį mes įdiegėme/įvykdėme mariadb:10.8.
Šis parametras nurodytas environment  bloke, kur:  PMA_HOST=mariadb - nurodo konteinerį/bloką mariadb , kuris aprašytas aukščiau šiame faile.
Taip pat depends_on: direktyva nurodo, kad phpMyAdmin konteineris bus paleistas tik tada, kai mariadb konteineris bus paleistas. Tai reiškia, kad kol mariadb konteineris nebus paleistas, phpMyAdmin konteineris nebus paleistas.  Galime paleisti phpmyadmin  ir mariadb vienu komandu. 

 

 

 

 

 

docker-compose up -d arba docker-compose up -d --force-recreate


Patikriname:

 

 

 

 

 

docker-compose ps

 



Panašiu būdu galite įdiegti norimą MariaDB arba MySQL duomenų bazės versiją. 

Kaip įdiegti Postgres ir pgadmin4 Docker galite perskaityti straipsnyje Kaip įdiegti PostgreSQL ir pgAdmin Docker.