gpt4 book ai didi

curl - 访问在 Vagrant 中运行的 Docker 容器

转载 作者:行者123 更新时间:2023-12-02 18:46:37 32 4
gpt4 key购买 nike

嗨,我正在使用 vagrant 和 docker-compose 来运行一个简单的 Web 应用程序。它在 OSX 上运行良好,但在 vagrant box (ubuntu/trusty64) 中运行时将无法正常工作。

我不想将 docker 提供程序用于 vagrant,因为我正在测试另一种类型的部署。这应该可以工作,因为我正在做与本地机器完全相同的事情。

为什么我什至不能在应用程序上 curl localhost 端口 80(或我尝试过的任何端口)?

root@vagrant-ubuntu-trusty-64:/home/vagrant/slack-challenge# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
03f4740887d7 slackchallenge_nginx "/bin/sh -c 'servi..." 43 minutes ago Up 12 minutes 0.0.0.0:8080->80/tcp slackchallenge_nginx_1
ed80831b69a9 slackchallenge_fpm "/usr/bin/supervisord" 43 minutes ago Up 12 minutes 9000/tcp slackchallenge_fpm_1
140ea815843b mariadb "docker-entrypoint..." 43 minutes ago Up 12 minutes 3306/tcp slackchallenge_db_1
root@vagrant-ubuntu-trusty-64:/home/vagrant/slack-challenge# curl localhost
curl: (7) Failed to connect to localhost port 80: Connection refused
root@vagrant-ubuntu-trusty-64:/home/vagrant/slack-challenge#

看起来像网络的东西。

最佳答案

是的,我只需要像这样启用端口转发:

config.vm.network "forwarded_port", guest: 8080, host: 8080, host_ip: "127.0.0.1"

现在我可以连接到我的本地端口 80,它实际上是在我的 docker 容器中,在我的 vagrant vm 中运行,有点令人困惑。
$ curl localhost:8080
Hello, world!

关于curl - 访问在 Vagrant 中运行的 Docker 容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44768582/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com