Tutorial Docker untuk Pemula : Part 2

Selamat malam guys, akhirnya dapat kesempatan juga untuk membuat tutorial tentang docker. Sebenarnya uda lama banget pengen nulis lagi, apa daya emang gw nya aja yang males hehe. Kali ini gw akan sedikit membahas mengenai cara menggunakan docker untuk mysql. Mungkin yang mau pemanasan tentang docker, bisa membaca di post berikut ini. Jika tutorial kemarin gw menggunakan mac, untuk tutorial ini gw akan menggunakan ubuntu. Intinya sih sama aja, karena docker akan selalu jalan di kernel linux hanya saja mungkin tampilannya agak sedikit beda dengan kemarin. Daripada basa-basi yuk lanjut saja ke tutorial berikut ini :

Untuk permulaan kita akan mulai dengan menginstall mysql terlebih dahulu. Sebenarnya di docker hub ada banyak sekali versi mysql. Nah untuk percobaan kali ini, kita akan menggunakan mysql percona. Buat kalian yang ingin menggunakan maria db juga gw persilahkan karena nantinya cara installnya akan sama saja.

MySQL Percona

MySQL Percona

 

Case kali ini kita akan menggunakan percona versi latest. Untuk commandnya masi pada inget kan ?

Setelah dijalankan seperti ini, apakah yang terjadi? Ya langsung keluar error seperti ini :

Error Run Percona

Error Run Percona

 

Waduh kenapa bisa error? Error ini keluar karena kita tidak memberikan default password untuk mysql nya. Lalu commandnya harus bagaimana biar ga error? Berikut commandnya.

Oke jadi apa yang terjadi ?

Percona Running in Foreground

Percona Running in Foreground

 

Kali ini kita percona kita sudah running, keren bukan? Lalu bagaimana kita cara mengecek apakah itu beneran running apa belum? Ada 2 cara yakni dengan mengecek apakah containernya sudah jalan atau langsung dengan mengecek menggunakan editor mysql. Kita akan menggunakan cara pertama terlebih dahulu. Kalian masi ingat kan cara untuk mengecek container yang masi aktif?

Check Active Docker Percona

Check Active Docker Percona

 

Wah ternyata sudah beneran jalan ya? Oke sekarang mari kita gunakan cara kedua yakni langsung menggunakan editor mysql. Disini gw akan menggunakan SQLYog. Buat kalian yang ga punya bisa menggunakan editor lain yang tersedia seperti mysql workbench atau navicat.

Can't Connect to Localhost

Can’t Connect to Localhost

 

Yah, ternyata belum jalan di localhost. Lalu bagaimana cara kita menggunakannya kalau ternyata tidak jalan di localhost ? Problemnya adalah kita tidak membinding local port kita dengan port container. Pada dasarnya mysql berjalan di port 3306. Hanya saja jika kita cek, yang jalan di port 3306 tidak ada.

Cek Binding Port

Cek Binding Port

 

Jadi apa yang harus kita lakukan supaya kita bisa mengakses dari local laptop kita? Pertama hal yang perlu dilakukan adalah dengan cara mencari tau container percona yang jalan di laptop kita menggunakan ip public network berapa. Untuk cara mengeceknya kita bisa menggunakan command berikut.

Dengan command tersebut kita akan mengecek ip public network container percona berapa. Untuk hasilnya seperti berikut.

 

Network Container Percona

Network Container Percona

 

Nah yang akan kita gunakan adalah IPaddress yakni 172.17.0.2. IP ini adalah ip public container yang bisa kita gunakan untuk mengakses container dari laptop kita. Untuk hasil ujicobanya adalah sebagai berikut.

Run Percona Success

Run Percona Success

 

Akhirnya kita sudah bisa mengakses mysql dari luar container. Untuk level berikutnya mari buat hidup kita lebih mudah tanpa perlu tahu IP public container dan menjalankan percona dengan membinding port container dengan port localhost kita. Selain itu mari buat percona berjalan di background pada saat pertama kali di run. Sebelum kita mulai menjalankan percona, alangkah baiknya kita kill terlebih container yang sedang jalan sekarang. Masi ingat dengan commandnya?

Setelah dikill mari kita jalankan percona dengan command berikut.
Lumayan panjang ya commandnya. Oke kali ini gw akan jelaskan mengenai maksud dari command berikut.

–name digunakan untuk mengidentifikasi nama container yang akan dijalankan.

-p digunakan untuk mengidentifikasi port yang dibinding. Contohnya port yang physical yakni port laptop kita dengan port container yakni port local docker. Untuk bentuknya seperti ini <physical port>:<container port>

-e digunakan untuk mengidentifikasi environment. Khusus percona mewajibkan untuk menset default root password terlebih dahulu kalau tidak maka container tidak dapat dijalankan.

-d digunakan untuk menjalankan container di background.

Run Docker Percona Properly

Run Docker Percona Properly

 

Sekarang mari kita test dengan menggunakan editor. Apakah kali ini sudah bisa dibind dengan port local laptop?

Docker Percona Localhost

Docker Percona Localhost

 

Oke ternyata sesimple ini cara menggunakan docker mysql. Nah demikian tutorial untuk mysql percona dengan menggunakan docker. Nantikan tutorial docker berikutnya.