首页 > 解决方案 > 从不同的 docker-compose 从一个容器连接到另一个容器

问题描述

我的第一个 docker-compose 看起来像

version: '3.4'

services:
  php-fpm:
    build:
      context: ./docker
      dockerfile: Dockerfile
      target: php-fpm
    ports:
      - 80:80
      - 443:443
    env_file:
      - .env

我的第二个 docker-compose 看起来像这样:

version: '3.4'

services:
  web:
    build:
      context: ./docker
      dockerfile: Dockerfile
      target: web
    ports:
      - 8080:80

现在我想curlphp-fpm一个容器到web另一个容器。所以我正在执行这个命令:

docker-compose exec php-fpm curl http://web:80/

我收到错误:

curl: (6) Could not resolve host: web

当我转到主机上的浏览器并输入地址时,http://localhost:8080我可以看到来自web容器的响应。

总结一下:我的问题是:如何从php-fpm容器卷曲到web容器?

PS。在实际项目中,这些 docker-compose 文件看起来要复杂得多,我无法将它们合并到一个 docker-compose 文件中。

标签: dockernetworkingdocker-compose

解决方案


您应该在同一网络上配置两个容器


推荐阅读