Rád by som mohol spustiť kontajner s -P
parameter, pričom sa viaže na vnútornú podsieť 10.10.0.0/22.
Predvolene raz vykonajte niečo takéto:
docker run -d -P --name=nginx nginx
Bude to vyzerať takto:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
dbb556c99c81 nginx "/usr/sbin/nginx" 2 minutes ago Up 2 minutes 0.0.0.0:32773->80/tcp nginx
Odhaliť to na 0.0.0.0/0 Existuje spôsob, ako urobiť tento môj interný IP?
odpovede:
2 pre odpoveď č. 1Môžete sa ručne viazať na konkrétne rozhranie pri výbere jednotlivých portov -p
, napríklad:
$ docker run -d -p 127.0.0.1:8080:80/tcp --name test-nginx nginx
2e07ebc61bcdc82a187a27eabca10211a4c9ac09d66e516e5c176d7282cffe2b
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2e07ebc61bcd nginx "nginx -g "daemon off" 5 seconds ago Up 2 seconds 443/tcp, 127.0.0.1:8080->80/tcp test-nginx
s -P
, používa rozhranie konfigurované na démone (dockerd
alebo docker daemon
). V predvolenom nastavení je to 0.0.0.0, ale môžete ho zmeniť na iný IP:
$ dockerd --help
# ...
--ip=0.0.0.0 Default IP when binding container ports
Všimnite si, že 0.0.0.0 počúva na všetkých rozhraniach, takže jediný dôvod na zadanie konkrétnej IP je zablokovať kontajner ďalej, nie otvoriť ho pre vaše prostredie.