Docker

Sediakan Pelayan MySQL dan phpMyAdmin dengan Docker

Sediakan Pelayan MySQL dan phpMyAdmin dengan Docker
Dalam artikel ini, saya akan menunjukkan kepada anda cara menggunakan Docker Compose untuk membuat wadah MySQL dan mengaksesnya menggunakan phpMyAdmin 5, antara muka pentadbir MySQL berasaskan web. Saya juga akan menunjukkan kepada anda cara mengakses pelayan pangkalan data MySQL yang berjalan dalam wadah Docker dari DataGrip IDE. Oleh itu, mari kita mulakan.

Keperluan:

Untuk mengikuti artikel ini, anda mesti memasang Docker di komputer anda. LinuxHint mempunyai banyak artikel yang boleh anda ikuti untuk memasang Docker pada edaran Linux yang anda inginkan jika anda belum memasangnya. Oleh itu, pastikan anda menyemak LinuxHint.sekiranya anda menghadapi masalah memasang Docker.

Memasang Docker Compose:

Anda boleh memuat turun fail binari Docker Compose dengan mudah dengan arahan berikut:

$ sudo curl -L "https: // github.com / docker / mengarang / melepaskan / memuat turun / 1.24.1 /
docker-compose - $ (uname -s) - $ (uname -m) "-o / usr / local / bin / docker-compose

NOTA: kerinting mungkin tidak dipasang pada edaran Linux anda. Sekiranya demikian, anda boleh memasang curl dengan arahan berikut:

Ubuntu / Debian / Linux Mint:

$ sudo apt install curl -y

CentOS / RHEL / Fedora:

$ sudo dnf memasang curl -y

Sekali dok-tulis fail binari dimuat turun, jalankan arahan berikut:

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

Sekarang, periksa sama ada dok-tulis arahan berfungsi seperti berikut:

versi $ docker-compose

Ia harus mencetak maklumat versi seperti yang ditunjukkan dalam tangkapan skrin di bawah.

Menyiapkan Docker Compose untuk Projek:

Sekarang, buat direktori projek (katakanlah ~ / docker / mysqldev) seperti berikut:

$ mkdir -p ~ / docker / mysqldev

Sekarang, arahkan ke direktori projek ~ / docker / mysqldev seperti berikut:

$ cd ~ / docker / mysqldev

Sekarang, buat a dok-tulis.keladi fail dalam direktori projek ~ / docker / mysqldev dan taipkan baris berikut di dok-tulis.keladi fail.

versi: "3.7 "
perkhidmatan:
pelayan mysql:
gambar: mysql: 8.0.19
mulakan semula: selalu
persekitaran:
MYSQL_ROOT_PASSWORD: rahsia
jilid:
- mysql-data: / var / lib / mysql
pelabuhan:
- "3306: 3306"
phpmyadmin:
gambar: phpmyadmin / phpmyadmin: 5.0.1
mulakan semula: selalu
persekitaran:
PMA_HOST: pelayan mysql
PMA_USER: akar
PMA_PASSWORD: rahsia
pelabuhan:
- "8080: 80"
jilid:
data mysql:

The dok-tulis.keladi fail hendaklah seperti berikut.

Di sini, saya telah membuat 2 perkhidmatan pelayan mysql dan phpmyadmin.

pelayan mysql perkhidmatan akan menjalankan mysql: 8.0.19 gambar (dari DockerHub) dalam bekas Docker.

phpmyadmin perkhidmatan akan menjalankan phpmyadmin / phpmyadmin: 5.0.1 gambar (dari DockerHub) dalam bekas Docker yang lain.

Dalam pelayan mysql perkhidmatan, yang MYSQL_ROOT_PASSWORD pemboleh ubah persekitaran digunakan untuk menetapkan akar kata laluan MySQL.

Dalam phpmyadmin perkhidmatan, yang PMA_HOST, PMA_USER, PMA_PASSWORD pemboleh ubah persekitaran digunakan untuk menetapkan nama host MySQL, nama pengguna dan kata laluan masing-masing yang akan digunakan oleh phpMyAdmin untuk menyambung ke pelayan pangkalan data MySQL yang berjalan sebagai pelayan mysql perkhidmatan.

Dalam pelayan mysql perkhidmatan, semua kandungan / var / lib / mysql direktori akan disimpan secara kekal di data mysql isi padu.

Di dalam pelayan mysql perkhidmatan, pelabuhan kontena 3306 (kanan) dipetakan ke port host Docker 3306 (dibiarkan).

Di dalam phpmyadmin perkhidmatan, pelabuhan kontena 80 (kanan) dipetakan ke port host Docker 8080 (dibiarkan).

Memulakan pelayan MySQL dan perkhidmatan phpMyAdmin:

Sekarang, untuk memulakan pelayan mysql dan phpmyadmin perkhidmatan, jalankan arahan berikut:

$ docker-compose up -d

Perkhidmatan harus bermula di latar belakang.

Untuk melihat bagaimana port dipetakan, jalankan arahan berikut:

$ docker-mengarang ps

Seperti yang anda lihat, untuk pelayan mysql perkhidmatan, port host Docker 3306 dipetakan ke port TCP kontena 3306.

Untuk phpmyadmin perkhidmatan, port host Docker 8080 dipetakan ke port TCP kontena 80.

Mengakses pelayan phpMyAdmin 5 atau MySQL dari Komputer Lain:

Sekiranya anda ingin mengakses pelayan pangkalan data phpMyAdmin 5 atau MySQL dari komputer lain di rangkaian anda, anda mesti mengetahui alamat IP host Docker anda.

Untuk mencari alamat IP host Docker anda, jalankan arahan berikut:

$ ip

Dalam kes saya, alamat IP hos Docker saya 192.168.20.160. Ia akan berbeza bagi anda. Oleh itu, pastikan untuk menggantinya dengan milik anda mulai sekarang.

Mengakses phpMyAdmin 5 dari Penyemak Imbas Web:

Untuk mengakses phpMyAdmin 5, buka penyemak imbas web anda dan lawati http: // localhost: 8080 dari hos Docker anda atau http: // 192.168.20.160: 8080 dari komputer lain di rangkaian anda.

phpMyAdmin 5 harus dimuat dalam penyemak imbas web anda.

Anda akan melihat amaran berikut. Klik pada Ketahui sebabnya.

Sekarang, klik pada Buat.

A phpmyadmin pangkalan data harus dibuat dan amaran harus hilang.

Sekarang, anda boleh menggunakan phpMyAdmin untuk menguruskan pangkalan data dan jadual MySQL anda.

Mengakses MySQL dari DataGrip:

Anda juga dapat mengakses pelayan pangkalan data MySQL dari DataGrip IDE atau IDE SQL lain.

Sekiranya DataGrip, klik + daripada Pangkalan Data bahagian dan pergi ke Sumber data > MySQL.

Sekarang, taipkan 192.168.20.160 sebagai Tuan rumah, 3306 sebagai Pelabuhan, akar sebagai Pengguna, rahsia sebagai Kata Laluan dan kemudian klik pada Sambungan Ujian.

Sekiranya semuanya berjalan lancar, anda akan melihat maklumat pelayan pangkalan data MySQL seperti yang ditunjukkan dalam tangkapan skrin di bawah.

Sekarang, klik pada okey.

Sekarang, anda seharusnya dapat menguruskan pangkalan data dan jadual MySQL anda dari DataGrip.

Menghentikan Perkhidmatan MySQL Server dan phpMyAdmin:

Sekarang, untuk menghentikan pelayan mysql dan phpmyadmin perkhidmatan, jalankan arahan berikut:

$ docker-mengarang

The pelayan mysql dan phpmyadmin perkhidmatan harus dihentikan.

Membersihkan Data Pelayan MySQL:

Sekiranya anda ingin membuang semua data dan tetapan pangkalan data MySQL, anda mesti membuang data mysql isi padu.

Anda boleh mendapatkan nama sebenarnya dari volume dengan arahan berikut:

isipadu $ docker ls

Seperti yang anda lihat, jumlah yang hendak dikeluarkan ialah mysqldev_mysql-data.

Anda boleh mengeluarkan kelantangan mysqldev_mysql-data dengan arahan berikut:

$ jumlah pelabur rm mysqldev_mysql-data

Rujukan:

[1] https: // hab.tukang dok.com / _ / mysql
[2] https: // hab.tukang dok.com / r / phpmyadmin / phpmyadmin /

Cara menukar saiz, warna & skema penunjuk dan kursor tetikus pada Windows 10
Penunjuk dan kursor tetikus di Windows 10 adalah aspek yang sangat penting dalam sistem operasi. Ini boleh dikatakan untuk sistem operasi lain juga, j...
Enjin Permainan Sumber Percuma dan Terbuka untuk Membangunkan Permainan Linux
Artikel ini akan merangkumi senarai enjin permainan sumber percuma dan terbuka yang dapat digunakan untuk mengembangkan permainan 2D dan 3D di Linux. ...
Shadow of the Tomb Raider untuk Tutorial Linux
Shadow of the Tomb Raider adalah penambahan kedua belas untuk siri Tomb Raider - francais permainan aksi-pengembaraan yang dibuat oleh Eidos Montreal....