Бұл мақалада біз Docker контейнерінде MariaDB MySQL серверін қалай орнату керектігін қарастырамыз және оны phpMyAdmin-ға қалай қосуға болатынын көреміз, ол docker-compose-да орнатылған, ол туралы Docker-да phpMyAdmin-ды қалай орнатуға болады.
Әдеттегідей, ОС пакеттерін жаңартамыз.
apt update
Қажетті пакеттерді орнатып, жаңа репозиторийді қосамыз:
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"
Жаңа репозиториймен пакеттерді жаңартамыз:
apt update
Docker-ды орнатамыз.
apt-get install docker-ce docker-ce-cli containerd.io
Docker нұсқасын тексереміз:
docker --version
Статусты көреміз:
systemctl status docker
Егер ол іске қосылмаса, іске қосамыз:
systemctl start docker
Автозапускқа қосамыз.
systemctl enable docker
curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
docker-compose файлына іске қосу құқықтарын орнатамыз.
chmod +x /usr/local/bin/docker-compose
Docker-Compose орнатылғанын тексереміз:
docker-compose --version
Барлығы дұрыс. Docker-Compose үшін файл жасауға көшеміз.
Болашақта қайда және не орнатылғанын білу үшін, /home каталогында осы жоба үшін бөлек папка жасаймыз және оған өтеміз.
mkdir /home/mariadb && cd /home/mariadb
Бұл нұсқаулықта біз нақты MariaDB 10.8 нұсқасын орнатамыз. Бірақ сіз hub.docker.com сайтында қолжетімді нұсқаны орната аласыз.
docker-compose.yaml файлын жасау үшін https://hub.docker.com/_/mariadb сілтемесіндегі репозиторийді пайдаланамыз.
docker-compose.yaml немесе docker-compose.yml файлын жасаймыз:
vim docker-compose.yaml
Оған келесі кодты қосамыз:
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
Мұнда:
mariadb: контейнеріңіздің атауы;
image: mariadb:10.8: mariadb-ды орналастыру үшін қолданылатын образ;
ports: 3310:3306 - mariadb-ға қосылу үшін қолданылатын 3310 порты;
restart:always - контейнердің сәтсіздік немесе серверді қайта жүктеу кезінде қайта іске қосылатынын көрсетеді;
MARIADB_USER: жаңа пайдаланушыны жасау, бұл жағдайда admin;
MARIADB_PASSWORD: admin пайдаланушысының паролі;
MARIADB_ROOT_PASSWORD: бұл пароль MariaDB суперпайдаланушысының root тіркелгісіне орнатылады.
Скриптімізді іске қосамыз (бұл үшін файл жасалған директорияда болу керек. Бұл жағдайда /home/mariadb):
docker-compose up -d
Образдарды жүктеп, орналастыруды күтеміз.
Тексереміз:
docker-compose ps
немесе
docker ps
Логтарды көру үшін команданы пайдаланыңыз:
docker logs -f mariadb
Сондай-ақ, тек 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
Сондай-ақ, mariadb:10.8 дерекқорының осы нұсқасын phpMyAdmin-мен бірге орнатып, оған байлауға болады. Мұны қалай жасауға болатынын қарастырайық.
Жасалған docker-compose.yaml файлын өңдейміз.
vim docker-compose.yaml
Төменде келесі құрылымды қосамыз:
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 секторында біз phpmyadmin образын қостық, оған 8090 портын көрсеттік, бірақ енді ол нақты дерекқор серверіне, яғни біз орнатқан/орналастырған mariadb:10.8 серверіне байланады.
Бұл параметр enviroment блогында жазылған, мұнда: PMA_HOST=mariadb - жоғарыда осы файлда сипатталған mariadb контейнеріне сілтеме жасайды.
Сондай-ақ, depends_on: директивасы mariadb контейнерінің іске қосылуына тәуелділікті көрсетеді. Бұл mariadb контейнері іске қосылмайынша, phpmyadmin контейнері іске қосылмайтынын білдіреді. Біз phpmyadmin және mariadb-ды бір командамен іске қоса аламыз.
docker-compose up -d немесе docker-compose up -d --force-recreate
Тексереміз:
docker-compose ps
Сол сияқты, сіз қажетті MariaDB немесе MySQL дерекқорының нұсқасын орната аласыз.
Docker-да Postgres және pgadmin4-ті қалай орнатуға болатынын PostgreSQL және pgAdmin-ды Docker-да қалай орнатуға болады мақаласынан оқи аласыз.