Menjalankan Mariadb dalam LXD Container
Posted on
Menjalankan mariadb dengan Docker container sudah hal yang umum, sangat sederhana, modal docker run. Beda lagi dengan menjalankan mariadb dalam lxd container karena harus install paket layaknya bare metal atau virtual machine. Yep, lxd container full OS, docker container per APP.
Launch lxd container ubuntu dan beri nama mariadb untuk container tersebut: lxc launch ubuntu-18.04 mariadb
Kok imagenya ubuntu-18.04? bukan ubuntu:18.94 atau images:ubuntu? Itu karena sebelumnya saya sudah download image ubuntu, jadi sudah punya di lokal gak perlu ambil dari remote. Nah ubuntu-18.04 ini hanya alias.
lxc image list
+--------------+--------------+--------+-----------------------------------------------+--------+----------+------------------------------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCH | SIZE | UPLOAD DATE |
+--------------+--------------+--------+-----------------------------------------------+--------+----------+------------------------------+
| archlinux | db7f17046b8d | no | Archlinux current amd64 (20190901_04:18) | x86_64 | 150.03MB | Sep 2, 2019 at 1:29am (UTC) |
+--------------+--------------+--------+-----------------------------------------------+--------+----------+------------------------------+
| ubuntu-18.04 | 2dd611e2689a | no | ubuntu 18.04 LTS amd64 (release) (20190813.1) | x86_64 | 177.60MB | Aug 31, 2019 at 4:51am (UTC) |
+--------------+--------------+--------+-----------------------------------------------+--------+----------+------------------------------+
Setelah selesai launch, jika kita list container kita akan muncul nama mariadb:
lxc list
+------------+---------+-----------------------+-----------------------------------------------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------------+---------+-----------------------+-----------------------------------------------+------------+-----------+
| haproxy | RUNNING | 10.174.126.81 (eth0) | fd42:deee:e13a:f247:216:3eff:feeb:91ea (eth0) | PERSISTENT | 0 |
+------------+---------+-----------------------+-----------------------------------------------+------------+-----------+
| mariadb | RUNNING | 10.174.126.147 (eth0) | fd42:deee:e13a:f247:216:3eff:fe84:d412 (eth0) | PERSISTENT | 0 |
+------------+---------+-----------------------+-----------------------------------------------+------------+-----------+
Selanjutnya layaknya bare metal atau vm, lakukan update repo dan install mariadb:
lxc exec mariadb -- apt update
Selesai update repo, kita install mariadb:
lxc exec mariadb -- apt install mariadb-server
Jalankan mysql_secure_installation
lxc exec mariadb -- mysql_secure_installation
Oh ya, selain menggunakan lxc exec, kita juga bisa menggunakan lxc console untuk masuk ke console container, tapi kita harus bikin user dulu dengan cara
lxc exec mariadb -- adduser derp
Setelah itu silakan login ke console container mariadb dengan user derp
Seleasi, silakan lanjutkan ritual umum seperti securing mariadb, bikin user, bikin db, dst. Kalau ingin expose port mariadb keluar, silakan edit bind address mariadbnya kemudian gunakan lxd proxy sepert deijelaskan di artikelku [disini: expose port lxd container ke luar host]({% post_url 2019-09-02-expose-port-lxd-container %}).