Dengan pembangunan berterusan teknologi pengkomputeran awan, teknologi kontena Docker telah menjadi salah satu teknologi paling popular dalam pengkomputeran awan moden. Bekas Docker bukan sahaja menyediakan penggunaan aplikasi yang pantas, tetapi juga menyediakan fleksibiliti dan mudah alih. Walau bagaimanapun, untuk aplikasi peringkat perusahaan, nama domain yang mengikat adalah penting. Artikel ini akan memperkenalkan cara mengikat nama domain dalam bekas Docker.
1. Apakah nama domain mengikat?
Apabila menggunakan aplikasi web, pastikan aplikasi boleh diletakkan dengan betul apabila pengguna mengaksesnya. Untuk masalah ini, kami biasanya menggunakan nama domain untuk memetakan aplikasi ke pelayan Proses ini dipanggil "pengikatan nama domain".
Dalam bekas Docker, kami juga boleh menggunakan kaedah yang sama untuk mengikat nama domain. Berikut ialah dua kaedah biasa untuk mengikat nama domain dalam Docker.
2. Gunakan Nginx sebagai proksi terbalik
Nginx ialah pelayan web dan pelayan proksi terbalik yang popular. Oleh kerana prestasi tinggi, kestabilan dan kebolehskalaannya, Nginx semakin digunakan dalam pelayan web.
Untuk menggunakan Nginx untuk mengikat nama domain dalam bekas Docker, anda perlu mengikuti langkah di bawah.
Langkah 1: Cipta bekas proksi terbalik Nginx
Kami perlu mencipta perkhidmatan proksi terbalik Nginx untuk aplikasi. Anda boleh menjalankan arahan berikut dalam bekas.
$ docker run -d -p 80:80 --name nginx-proxy jwilder/nginx-proxy
Perhatikan bahawa ini akan menjalankan bekas baharu di dalam Docker yang akan mendengar pada port 80.
Langkah 2: Jalankan bekas aplikasi
Seterusnya, kami perlu melancarkan aplikasi kami dalam bekas Docker. Sebagai contoh, jika kita ingin menggunakan aplikasi Node.js, kita boleh melaksanakan arahan berikut.
$ docker run -d -e VIRTUAL_HOST=example.com --name node-app node-app
Dalam contoh ini, aplikasi kami akan terikat pada nama domain example.com. Pembolehubah persekitaran VIRTUAL_HOST adalah satu kemestian untuk menggunakan bekas jwilder/nginx-proxy, ia akan memastikan bahawa permintaan DNS kami akhirnya mencapai bekas yang betul.
Langkah 3: Konfigurasikan DNS
Akhir sekali, kami perlu mengkonfigurasi DNS kami untuk menghala ke bekas proksi terbalik. Untuk konfigurasi DNS, kami boleh menggunakan Docker Swarm atau mengkonfigurasi pelayan DNS secara manual.
Kini, kami telah berjaya menggunakan NGINX untuk mengikat nama domain dalam bekas Docker.
3. Gunakan pautan terbina dalam Docker
Docker mempunyai mekanisme terbina dalam yang dipanggil "pautan" yang boleh berkomunikasi antara bekas. Dengan menggunakan mekanisme ini, kami boleh mengakses perkhidmatan dalam bekas lain dari satu bekas.
Untuk menggunakan "pautan" untuk mengikat nama domain dalam bekas Docker, anda perlu mengikuti langkah di bawah.
Langkah 1: Buat bekas aplikasi
Mula-mula, mulakan aplikasi kami dalam bekas Docker. Sebagai contoh, jika kita ingin menggunakan aplikasi Node.js, kita boleh melaksanakan arahan berikut.
$ docker run -d --name node-app node-app
Langkah 2: Buat pautan
Seterusnya, kita perlu mencipta pautan antara bekas lain pada hos Docker yang sama. Sebagai contoh, jika kita ingin menggunakan proksi terbalik Nginx, kita boleh melaksanakan arahan berikut.
$ docker run -d -p 80:80 --link node-app:node-app --name nginx-proxy nginx-proxy
Dalam contoh ini, kami memautkan bekas proksi terbalik Nginx ke dalam bekas Node.js kami.
Langkah 3: Konfigurasikan DNS
Akhir sekali, kita perlu mengkonfigurasi DNS untuk menghala ke bekas proksi terbalik. Untuk konfigurasi DNS, kami boleh menggunakan Docker Swarm atau mengkonfigurasi pelayan DNS secara manual.
Kini, kami telah berjaya mengikat nama domain menggunakan pautan dalam bekas Docker.
Ringkasan
Dalam artikel ini, kami membincangkan dua cara biasa untuk melaksanakan pengikatan nama domain dalam bekas Docker. Menggunakan Nginx sebagai proksi terbalik menyediakan fungsi yang lebih maju, tetapi juga lebih kompleks dan memerlukan pemahaman yang lebih mendalam. Walau bagaimanapun, pautan terbina dalam Docker ialah kaedah yang lebih mudah yang hanya memerlukan pelaksanaan beberapa arahan asas.
Tidak kira kaedah yang anda pilih, mengikat nama domain adalah penting untuk aplikasi peringkat perusahaan moden. Saya harap artikel ini telah memberi inspirasi kepada anda dan boleh berguna untuk projek Docker anda yang seterusnya.
Atas ialah kandungan terperinci Bagaimana untuk mengikat nama domain dengan docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!