如何使用重定向127.0.0.1到docker机器IP
我正在为响应通配符子域的web应用程序设置一个如何使用重定向127.0.0.1到docker机器IP,docker,docker-compose,docker-machine,Docker,Docker Compose,Docker Machine,我正在为响应通配符子域的web应用程序设置一个docker compose环境。在开发过程中,我们只需使用greatlvh.me域(解析为127.0.0.1),它适用于所有子域,无需任何额外配置,例如: 应用程序lvh.me:3000 附件2.lvh.me:3000 app watherever.lvh.me:3000 我的问题是如何设置自定义域(比如app.local)及其所有子域以解析到docker机器ip 注意:我不想使用etc/hosts,因为它需要将每个子域单独添加到文件中 您可以
docker compose
环境。在开发过程中,我们只需使用greatlvh.me
域(解析为127.0.0.1),它适用于所有子域,无需任何额外配置,例如:
- 应用程序lvh.me:3000
- 附件2.lvh.me:3000
- app watherever.lvh.me:3000
app.local
)及其所有子域以解析到docker机器ip
注意:我不想使用
etc/hosts
,因为它需要将每个子域单独添加到文件中 您可以通过DNS托管服务使用您的一个域(或购买一个便宜的域)
如果您的docker机器的ip是动态的,您将需要一个支持动态DNS的托管服务,或者一个常规DNS服务,其中包含指向静态ip的a记录。这实际上与docker没有特别的关系 请注意,使用“.local”域后缀执行此操作将阻止您从公共受信任的机构获取TLS证书,并将导致您必须修改环境以信任本地证书颁发机构,然后该机构将证书颁发给docker计算机的托管域。如果你有一个IT部门,我强烈建议你和他们谈谈;如果他们拒绝了你的请求,与你的经理谈谈,让他们推动 基本步骤如下:
(如果您需要TLS证书进行此开发,您可能真的需要!——您还应该与您的IT部门联系。他们可以通过验证DNS区域的控制来从LetsEncrypt获得免费通配符证书。了解如何完成此操作可能需要15到30分钟,而设置环境可能需要15分钟到6小时(取决于使用中的DNS提供商。)您的DNS结构目前如何?您是否有一个全包条目重定向到docker机器ip?我假设您希望远程用户访问它(产品环境)。这是开发环境的设置。生产环境可以使用全包。
app.local. IN SOA 60 yourmachinename your.email.address. (
2019102100 ; serial number: YYYYMMDDss where ss is sequence
3600 ; refresh interval, not important here
1800 ; retry interval, not important here
3600 ; record expiration, not important here
60 ; minimum record time-to-live
)
app.local. IN A 60 172.19.20.201
*.app.local. IN A 60 172.19.20.201