Docker:在其他容器中找到sendmail

问题描述 投票:2回答:1

我正在学习如何将Docker与多个容器一起使用,而不是单个容器。

我想学习如何从容器A调用位于容器B上的程序。

(即:我希望能够从我的sendmail容器中调用web,而sendmail和类似的程序位于mailhog容器中。)

我有这个:

docker-compose.yml

web:
  container_name: centosweb
  image: fab/centosweb
  ports:
    - "80:80"
  volumes:
    # Single files
    - ./config/httpd.conf:/etc/httpd/conf/httpd.conf
    # Directories
    - ./vhosts:/var/www/html
    - /Users/fabien/Dropbox/AppData/XAMPP/web/bilingueanglais/public_html:/var/www/html/bilingueanglais
    - ./logs/apache:/etc/httpd/logs # This will include access_log(s) and error_log(s), including PHP errors.
  links:
    - db:3306
    - mailhog:1025
db:
  container_name: centosdb
  image: fab/centosdb
  hostname: db
  volumes:
    # Single files
    - ./config/my.cnf:/etc/my.cnf
    # Directories
    - ./mysqldata:/var/lib/mysql
    - ./logs/mysql:/var/log/mysql
mailhog:
  image: mailhog/mailhog
  hostname: mailhog
  ports:
      - 1025:1025
      - 8025:8025

然而,现在,web找不到/usr/sbin/sendmail,因为它位于mailhog容器上。尝试使用PHP中的邮件功能会产生Could not instantiate mail function错误。

我如何链接这两个?

docker isolation
1个回答
0
投票

容器需要在同一个网络中,这是我的问题。

© www.soinside.com 2019 - 2024. All rights reserved.