Pelbagai perkhidmatan di belakang satu pelayan dengan Nginx Proxy Manager
Apabila satu pelayan menjalankan lebih daripada satu projek, lambat laun anda akan terserempak dengan port 80 dan 443, yang hanya boleh didengari oleh satu proses. Artikel Habr daripada blog Selectel ini menunjukkan langkah demi langkah cara menyelesaikannya dengan Nginx Proxy Manager.
Penulis mula-mula menerangkan masalahnya: port istimewa, peraturan satu pendengar bagi setiap port, isu CORS apabila frontend dan backend dipisahkan mengikut port, serta ketiadaan HTTPS. Proksi terbalik menyelesaikannya sebagai perantara dengan menghalakan trafik mengikut domain dan laluan. Kelebihan tambahan ialah tembok api hanya perlu membuka port 22, 80 dan 443.
Persekitaran ujian ialah VDS dengan 2 vCPU, RAM 2 GB dan NVMe 40 GB, menjalankan Ubuntu 24.04 dan Docker daripada repositori rasmi. Rangkaian dicipta dengan docker network create proxy, kemudian kontena jc21/nginx-proxy-manager dimulakan dengan volum untuk data dan sijil. Saya suka panel pentadbiran pada port 81 yang hanya diikat kepada 127.0.0.1 dan diakses melalui terowong SSH.
Seterusnya, hos proksi dikonfigurasi: ruangan Forward Hostname diisi dengan nama kontena, dan sijil SSL dikaitkan pada tab SSL. traefik/whoami digunakan untuk ujian. Kes apabila aplikasi berjalan terus pada hos juga dibincangkan secara berasingan: alamat get laluan rangkaian Docker diperoleh dengan docker network inspect, dan tembok api ditetapkan supaya aplikasi tidak boleh dicapai dengan memintas proksi.
Ada juga kritikan kecil. Contoh mencampurkan domain yang berbeza dan imej menggunakan tag latest, yang boleh menjejaskan kebolehulangan dari semasa ke semasa. Namun ia titik permulaan yang baik bagi sesiapa yang mahu menjalankan beberapa perkhidmatan di rumah atau pada VDS tanpa menyunting konfigurasi nginx secara manual.
Sumber: Habr (blog Selectel)
Penulis mula-mula menerangkan masalahnya: port istimewa, peraturan satu pendengar bagi setiap port, isu CORS apabila frontend dan backend dipisahkan mengikut port, serta ketiadaan HTTPS. Proksi terbalik menyelesaikannya sebagai perantara dengan menghalakan trafik mengikut domain dan laluan. Kelebihan tambahan ialah tembok api hanya perlu membuka port 22, 80 dan 443.
Persekitaran ujian ialah VDS dengan 2 vCPU, RAM 2 GB dan NVMe 40 GB, menjalankan Ubuntu 24.04 dan Docker daripada repositori rasmi. Rangkaian dicipta dengan docker network create proxy, kemudian kontena jc21/nginx-proxy-manager dimulakan dengan volum untuk data dan sijil. Saya suka panel pentadbiran pada port 81 yang hanya diikat kepada 127.0.0.1 dan diakses melalui terowong SSH.
Seterusnya, hos proksi dikonfigurasi: ruangan Forward Hostname diisi dengan nama kontena, dan sijil SSL dikaitkan pada tab SSL. traefik/whoami digunakan untuk ujian. Kes apabila aplikasi berjalan terus pada hos juga dibincangkan secara berasingan: alamat get laluan rangkaian Docker diperoleh dengan docker network inspect, dan tembok api ditetapkan supaya aplikasi tidak boleh dicapai dengan memintas proksi.
Ada juga kritikan kecil. Contoh mencampurkan domain yang berbeza dan imej menggunakan tag latest, yang boleh menjejaskan kebolehulangan dari semasa ke semasa. Namun ia titik permulaan yang baik bagi sesiapa yang mahu menjalankan beberapa perkhidmatan di rumah atau pada VDS tanpa menyunting konfigurasi nginx secara manual.
Sumber: Habr (blog Selectel)
Komen 0
Tinggalkan komen pertama, dalam apa-apa bahasa.
Log masuk untuk berkomen