Latest web development tutorials

koneksi kontainer Docker

Di depan kita untuk mencapai akses ke jaringan melalui port yang beroperasi di layanan buruh pelabuhan kontainer. Mari kita terhubung ke port kontainer buruh pelabuhan


Jaringan Pelabuhan Pemetaan

Kami menciptakan wadah aplikasi python.

w3big@w3big:~$ docker run -d -P training/webapp python app.py
fce072cc88cee71b1cdceb57c2821d054a4a59f67da6b416fceb5593f059fc6d

Selain itu, kita dapat menentukan wadah alamat jaringan yang mengikat, seperti 127.0.0.1 mengikat.

Kami menggunakan parameter -P untuk membuat sebuah wadah, menggunakan buruh pelabuhan ps pelabuhan 5000 terikat untuk melihat port host 32.768.

w3big@w3big:~$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                     NAMES
fce072cc88ce        training/webapp     "python app.py"     4 minutes ago       Up 4 minutes        0.0.0.0:32768->5000/tcp   grave_hopper

Kita juga bisa menggunakan bendera p untuk menentukan pelabuhan kontainer terikat ke port host.

Apakah perbedaan antara dua cara:

  • -P: Apakah dipetakan ke dalam pelabuhan kontainer acak port yang tinggi pada host.
  • -p: di dalam pelabuhan kontainer terikat ke port host tertentu.
w3big@w3big:~$ docker run -d -p 5000:5000 training/webapp python app.py
33e4523d30aaf0258915c368e66e03b49535de0ef20317d3f639d40222ba6bc0
w3big@w3big:~$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS              PORTS                     NAMES
33e4523d30aa        training/webapp     "python app.py"     About a minute ago   Up About a minute   0.0.0.0:5000->5000/tcp    berserk_bartik
fce072cc88ce        training/webapp     "python app.py"     8 minutes ago        Up 8 minutes        0.0.0.0:32768->5000/tcp   grave_hopper

Selain itu, kita dapat menentukan wadah alamat jaringan yang mengikat, seperti 127.0.0.1 mengikat.

w3big@w3big:~$ docker run -d -p 127.0.0.1:5001:5002 training/webapp python app.py
95c6ceef88ca3e71eaf303c2833fd6701d8d1b2572b5613b5a932dfdfe8a857c
w3big@w3big:~$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                                NAMES
95c6ceef88ca        training/webapp     "python app.py"     6 seconds ago       Up 6 seconds        5000/tcp, 127.0.0.1:5001->5002/tcp   adoring_stonebraker
33e4523d30aa        training/webapp     "python app.py"     3 minutes ago       Up 3 minutes        0.0.0.0:5000->5000/tcp               berserk_bartik
fce072cc88ce        training/webapp     "python app.py"     10 minutes ago      Up 10 minutes       0.0.0.0:32768->5000/tcp              grave_hopper

Sehingga kita bisa mengakses wadah melalui port akses 127.0.0.1:5001 5002.

Contoh di atas, default adalah untuk mengikat port tcp, jika Anda ingin mengikat port UPD, sebuah pelabuhan di bagian belakang plus / udp.

w3big@w3big:~$ docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py
6779686f06f6204579c1d655dd8b2b31e8e809b245a97b2d3a8e35abe9dcd22a
w3big@w3big:~$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                                NAMES
6779686f06f6        training/webapp     "python app.py"     4 seconds ago       Up 2 seconds        5000/tcp, 127.0.0.1:5000->5000/udp   drunk_visvesvaraya
95c6ceef88ca        training/webapp     "python app.py"     2 minutes ago       Up 2 minutes        5000/tcp, 127.0.0.1:5001->5002/tcp   adoring_stonebraker
33e4523d30aa        training/webapp     "python app.py"     5 minutes ago       Up 5 minutes        0.0.0.0:5000->5000/tcp               berserk_bartik
fce072cc88ce        training/webapp     "python app.py"     12 minutes ago      Up 12 minutes       0.0.0.0:32768->5000/tcp              grave_hopper

buruh pelabuhan pelabuhan perintah memungkinkan kita untuk dengan cepat dan mudah melihat informasi port yang mengikat.

w3big@w3big:~$ docker port adoring_stonebraker 5002
127.0.0.1:5001

koneksi kontainer Docker

pemetaan port bukan satu-satunya cara untuk terhubung ke wadah buruh pelabuhan lain.

buruh pelabuhan memiliki sistem koneksi memungkinkan beberapa kontainer bersama-sama, berbagi informasi koneksi.

koneksi buruh pelabuhan akan membuat hubungan orangtua-anak, wadah orang tua di mana Anda dapat melihat informasi dari sub kontainer.


penamaan kontainer

Ketika kita membuat sebuah wadah waktu, buruh pelabuhan itu akan secara otomatis diberi nama. Selain itu, kita juga bisa menggunakan --name untuk mengidentifikasi wadah penamaan, misalnya:

w3big@w3big:~$  docker run -d -P --name w3big training/webapp python app.py
43780a6eabaaf14e590b6e849235c75f3012995403f97749775e38436db9a441

Kita bisa melihat nama wadah menggunakan perintah buruh pelabuhan ps.

w3big@w3big:~$ docker ps -l
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                     NAMES
43780a6eabaa        training/webapp     "python app.py"     3 minutes ago       Up 3 minutes        0.0.0.0:32769->5000/tcp   w3big