在Windows机器上,我可以使用什么IP地址来获取在虚拟机盒上的VM中运行的Docker容器的IP?
我有:Windows 10机器随Ubuntu VM一起安装的Virtualbox有 …
如果您使用的是Windows和Ubuntu VM,并且在Ubuntu VM中运行Docker容器,则需要在docker-compose文件中或在创建容器时公开端口,例如
的 docker-compose.yml示例: 强>
version: '3.1' services: rabbitmq: build: context: . dockerfile: Rabbit-Dockerfile container_name: broker restart: always environment: TZ: GMT RABBITMQ_DEFAULT_USER: rabbitIpi RABBITMQ_DEFAULT_PASS: ipitasks2018 tty: true hostname: rabbit networks: celerynet: aliases: - rabbit
ports: - 5672:5672 - 5671:5671 - 4369:4369 - 25672:25672 - 8181:15672
networks: celerynet: driver: bridge
的 docker run示例: 强>
docker run -d -p 80:80 --name webserver nginx
在Ubuntu VM中暴露容器的端口后,您将需要使用容器的端口访问Ubuntu VM的ip。
如果您的ubuntu VM上有防火墙,则需要打开容器将使用的端口
为了将docker IP暴露给主机,您需要将VM Network Settings设置为“Bridged Adapter”。
我使用macOS,但我认为它在Windows中是一样的。
之后,检查您的VM IP。例如,如果您的VM IP 192.168.30.100,并且您的docker在端口8000中运行。现在您可以从主机访问IP 192.168.30.100:8000的docker。