ამ სტატიაში განვიხილავთ, როგორ უნდა დააყენოთ Docker კონტეინერში MySQL სერვერი MariaDB და ვნახავთ, როგორ უნდა დაუკავშირდეთ მას phpMyAdmin-ს docker-compose-ის საშუალებით, რომელიც ჩვენ დავაყენეთ სტატიაში როგორ უნდა დააყენოთ phpMyAdmin Docker-ში.
როგორც ყოველთვის, განვაახლებთ ოპერაციული სისტემის პაკეტებს.
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 - პორტი 3310, რომელიც ჩვენ გამოვიყენებთ mariadb-სთან დაკავშირებისთვის
restart:always - მიუთითებს, რომ კონტეინერი ხელახლა გაწვდება შეცდომის ან სერვერის გადატვირთვის შემთხვევაში
MARIADB_USER: ახალი მომხმარებლის შექმნა, ამ შემთხვევაში ეს არის admin;
MARIADB_PASSWORD: პაროლი მომხმარებლის admin-ისთვის;
MARIADB_ROOT_PASSWORD: ეს პაროლი დაინიშნება root სუპერ მომხმარებლის ანგარიშისთვის MariaDB .
დავიწყებთ ჩვენს სკრიპტს (ამისთვის უნდა ვიყოთ იმ დირექტორიაში, სადაც ჩვენი ფაილი შეიქმნა. ამ შემთხვევაში ეს არის /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: მიუთითებს, რომ phpmyadmin კონტეინერი არ გაწვდება სანამ mariadb კონტეინერი არ გაწვდება. ჩვენ შეგვიძლია დავიწყოთ phpmyadmin და mariadb ერთ ბრძანებით.
docker-compose up -d ან docker-compose up -d --force-recreate
ამოწმებთ:
docker-compose ps
ამგვარად, თქვენ შეგიძლიათ დააყენოთ საჭირო ვერსია მონაცემთა ბაზის MariaDB ან MySQL.
როგორ უნდა დააყენოთ Postgres და pgadmin4 Docker-ში შეგიძლიათ წაიკითხოთ სტატიაში როგორ უნდა დააყენოთ PostgreSQL და pgAdmin Docker-ში.