Penggunaan dan pemahaman tentang docker kini agak mengelirukan, dan saya ingin meminta nasihat semua orang.
Sebagai contoh:
Saya kini mempunyai sistem Linux dengan memori 8G.
Saya perlu menjalankan dua persekitaran pada sistem ini: persekitaran alfa dan beta.
Persekitaran alpha dan beta kedua-duanya menggunakan nginx dan mysql mereka sendiri.
Pemahaman saya sekarang ialah ada dua pilihan:
Pilihan 1:
创建两个 container:container_alpha,container_beta。
在两个container_alpha和container_beta和里面都安装好mysql和nginx
Pilihan 2:
创建四个 container,在四个container里面都**只**安装
alpha_mysql
alpha_nginx
beta_mysql
beta_nginx
Untuk pilihan satu, konfigurasi, penggunaan dan pengurusan akan menjadi lebih mudah dan jelas.
Untuk pilihan 2, setiap kontena hanya sepadan dengan satu perkhidmatan. Saya tidak tahu sama ada ini lebih selaras dengan prinsip docker.
Atau mungkin pemahaman saya tentang docker masih belum betul, jadi apakah cara yang betul untuk menggunakan docker?
Ia bergantung pada perkara yang anda anggap sebagai perkhidmatan, atau "unit terurus".
Jika db+nginx+php sentiasa satu-dengan-satu dan terikat antara satu sama lain, saya rasa tidak mengapa untuk menganggap ini sebagai perkhidmatan.
Jika pangkalan data mempunyai tuan-hamba, pemisahan membaca dan menulis, dsb., adalah lebih mudah untuk mengira mysql sebagai perkhidmatan.
Selain itu, pilihan 2 lebih mesra untuk pengembangan Anda tidak perlu membuka imej apabila anda ingin menukarnya. Anda hanya perlu menukar konfigurasi docker atau lain-lain.