Menjalankan Wordpress & MariaDB Menggunakan Docker Compose

Prasyarat

Pertama, kita perlu menginstal docker-compose di mesin kita hanya dengan menjalankan docker-compose -vJika belum terinstal di mesin kita, kita perlu menginstalnya terlebih dahulu.

Buat Compose File 

Selanjutnya, kita perlu membuat docker-compose.ymlfile baru dan mengisinya dengan setup wordpress dan mysql. Nama file sebenarnya bisa apa saja, tetapi jika kita menggunakan nama lain, kita perlu menentukan file saat menjalankan perintah compose.

Versi: "3" 
layanan:
wordpress:
container_name: my_wordpress
image: wordpress
port:
- "8080: 80"
link:
- mysql
lingkungan:
WORDPRESS_DB_HOST: mysql
WORDPRESS_DB_USER: root
WORDPRESS_DB_PASSWORD: "12345"
WORDPRESS_DB_NAME: wordpress
mysql:
container_name: my_mysql
image: "mysql:5.7"
volume:
- ./.mysql:/var/lib/mysql
lingkungan:
MYSQL_DATABASE: wordpress
MYSQL_ROOT_PASSWORD: "12345"

Ada banyak hal yang terjadi pada file itu, mari kita bedah satu per satu. Kolom pertama adalah versionyang memberi tahu Compose format file apa yang kita gunakan. Bidang tertentu mungkin tidak dikenali oleh versi Compose tertentu, jadi periksa versi mana yang didukung oleh Compose yang diinstal pada mesin Anda .

Bidang kedua kami adalah servicesyang menggambarkan layanan apa yang ingin kami jalankan. Dalam hal ini, kita akan menjalankan wadah wordpress dan mysql. Di setiap layanan, kami memiliki container_namebidang opsional yang akan digunakan sebagai nama wadah. Jika kita tidak menentukan nama container, Compose akan membuatnya secara otomatis.

Selanjutnya, kami memiliki imagebidang yang memberi tahu Compose gambar buruh pelabuhan mana yang ingin kami gunakan. Karena kami ingin wordpress dapat diakses di luar wadah, kami membuka pemetaan port dari 8080host kami ke 80port wadah dengan mendefinisikannya di portsbidang.

Kami belajar di artikel sebelumnya bahwa kami perlu menghubungkan wadah wordpress dan mysql agar mereka dapat berkomunikasi satu sama lain. Dalam hal ini, kami biasa linksmelakukannya dengan hanya menentukan wadah lain yang ingin kami hubungkan dengan layanan ini.

Kami menggunakan environmentbidang untuk mendaftar semua variabel lingkungan yang perlu diatur di setiap wadah. Terakhir, dalam layanan mysql, kami memasang volume ke dalamnya di volumelapangan. Kami menautkan .mysqlfolder di Host ke /var/lib/mysqlwadah mysql sehingga data basis data dapat bertahan bahkan jika kami mematikan wadah. Jika kita belum memiliki .mysqlfolder di host, Docker akan membuatnya untuk kita.

Menjalankan Compose

Untuk menjalankan layanan, kita hanya perlu menjalankan satu perintah. Perhatikan bahwa -dflag akan membuat layanan berjalan di latar belakang.

$ docker-compose up -d

Sedikit catatan, kita perlu menentukan nama file compose jika kita menggunakan nama yang tidak standar, misalnya some-compose.yml.

$ docker-compose up -f some-compose.yml -d

Meskipun, kita menjalankan container secara deklaratif, kita masih dapat menggunakan dockerperintah untuk melakukan operasi pada container ini. Misalnya, jika kita ingin masuk ke dalam database, kita dapat menggunakan perintah yang sama seperti sebelumnya.

$ docker exec -it my_mysql mysql -u root -p

Untuk mematikan container ini, kita tidak perlu menghapusnya satu per satu. Kita cukup menjalankan:

$ docker-compose down

Dengan cara ini, kita dapat menghidupkan dan mematikan pengaturan dengan satu perintah. Keuntungan lain dari ini adalah bahwa file penulisan dapat dipindahkan ke komputer lain dan kami akan menjalankan pengaturan yang sama di dalamnya. Ini dapat memudahkan pengembangan dalam tim serta penerapan ke mesin pengujian atau produksi.

0 komentar:

Posting Komentar