我是 Docker 的新手,虽然我了解容器和虚拟机之间的区别,但我不确定是否可以将主机的 IP 地址(192.168.xx,而不是 127.0.0.1)分配给其中运行的 Docker 容器。
我找到了一个很好的答案来解释如何从容器内部连接到主机但它没有说明主机和容器是否都具有相同的IP地址完全可以。
另外,这是关于 Windows 环境中 Docker 的问题。
答案1
根据您的评论解释您想要实现的目标:
容器的实际主机名和 IP 并不重要。您只需确保域名解析为在端口 80 上运行 Web 服务器(Apache/nginx/…)的某个东西(物理主机或容器)。由于域名解析到您的主机,因此您只需将 dockerized Web 服务器的端口 80 公开为主机的端口。Docker 通过以下方式支持这一点港口出版可以使用-p
选择docker run
。
docker run -it --rm -p 80:80 nginx
假设您想在单独的容器中运行 DB、Web 服务器和 PHP。实现此自动化的最便捷方法是使用docker-compose
。可以使用ports
选项实现端口发布。网络上有许多关于如何实现此目的的教程。