apache - 使用docker bridge网络IP访问apache容器中的vhost

标签 apache networking docker bridge

我想了解如何通过在本地/ etc / hosts文件中提供带有docker bridge网络IP的条目来访问docker容器内的vhost中配置的域。

  • 我使用docker-compose(v2)
  • Docker网桥IP(默认):172.17.0.1
  • 我有一个在172.19.0.10上运行的apache容器

  • Vhost很简单,例如:
    <VirtualHost *:80>
      ServerName mywebsite.local
    

    在我的本地 / etc / hosts文件中,我有:172.17.0.1 mywebsite.local

    而且有效...但是如何呢?
    Docker是否正在使用端口来猜测将流量转发到哪里(从172.17.0.1到172.19.0.10)?
    有人可以给我一些解释,如果可能的话,给我文件吗?

    谢谢。

    最佳答案

    在某些时候,您必须使用以下方式启动容器/ docker :

    docker run -d -p 1337:80 coreos/apache /usr/sbin/apache2ctl -D FOREGROUND
    
    1337:80意味着您的浏览器中的localhost:1337会在端口80上查找,因此也会在您的apache-container上查找。

    希望你有什么想法?

    另请参见thisthat

    关于apache - 使用docker bridge网络IP访问apache容器中的vhost,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43188920/

    相关文章:

    json - 发行 “Accessing S3 bucket from ElasticBeanstalk using Docker Json file”

    apache - 如何为 apache 做贡献?

    apache - 使用 htaccess 从 URL 中删除字符

    c - 如何在 C 代码中重组 tcp 和解码 http 信息?

    networking - 预取 CachedNetworkImage 显示的图像

    python - 通过 pip 安装 grpcio 时 Docker 构建花费的时间太长

    php - 需要 .htaccess 帮助 : nonexistent urls 301 redirecting to 404, 而不是直接给出 404

    python - Apache 500 内部服务器错误 - DJANGO

    database - AWS 数据库连接被拒绝

    windows - 无法启动 docker engine open//./pipe/docker_engine