docker 端口映射 有点蒙圈 谁给解释一下
ringa_lee
ringa_lee 2017-04-25 09:01:39
0
3
3010

docker 端口映射 有点蒙圈 谁给解释一下

ringa_lee
ringa_lee

ringa_lee

membalas semua(3)
淡淡烟草味

Untuk mengakses satu sama lain antara bekas, anda perlu menggunakan parameter --link semasa membuat bekas, dan sebaiknya bekas yang disambungkan telah dinamakan.

docker run --name mysql .......
docker run --name php --link mysql .......
docker run --name nginx --link php .......

Apabila dimulakan dengan cara ini, anda hanya perlu menggunakan nama bekas yang sepadan dalam program untuk mengakses perkhidmatan yang sepadan.
Contohnya fastcgi_pass php:9000;

Jika port terdedah kepada dunia luar, anda perlu melepasi parameter -p atau -P Sebaiknya gunakan -p.
docker run --name nginx -p 80:80 -p 443:443 .......
Dengan cara ini, penyemak imbas boleh mengakses perkhidmatan Web yang disediakan oleh pelayan ini.

大家讲道理

Pemetaan port:
ialah untuk memilih port mesin tempatan anda dan memetakannya ke port kontena anda, supaya jika permintaan datang dan mengakses port dipetakan mesin tempatan anda, permintaan itu akan menjadi Port dikemukakan kepada bekas bergantung pada perkhidmatan dalam bekas untuk mengendalikan permintaan.

Mengapa kita memerlukan pemetaan pelabuhan?
IP tempatan anda ialah IP awam, seperti 1.2.3.4; tetapi IP bekas tempatan ialah IP maya, seperti 172.17.0.2. Dunia luar tidak boleh mengakses perkhidmatan kontena anda secara langsung Pada masa ini, anda boleh menggunakan perkhidmatan dalam kontena dengan mengakses pelabuhan mesin tempatan.

我想大声告诉你

Saya tidak tahu apa yang dipanggil "pengepungan" secara khusus merujuk kepada.
Ringkasnya, ia adalah serupa dengan prinsip NAT Jika anda memerlukan rangkaian hos untuk dapat mengakses perkhidmatan yang disediakan oleh kontena, anda perlu mendedahkan port kontena kepada rangkaian hos.
Sintaks biasa adalah untuk membawa parameter "-p host_port:container_port" semasa menjalankan "docker run".

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan