【问题标题】:Why separated docker containers for ngnix and php?为什么要为 nginx 和 php 分开 docker 容器?
【发布时间】:2021-08-04 16:38:37
【问题描述】:

大多数时候我在 docker-compose.yml 中看到 ngnix 和 php 的两个独立服务,像这样:

version: '3.3'

services:
  php:
    image: php
    ports:
      - "127.0.0.1:8000:8000"
    volumes:
      - ".:/code_folder"
    networks:
      - default

  ngnix:
    image: ngnix
    ports:
      - "127.0.0.1:80:80"
    volumes:
      - ".:/code_folder"
    networks:
      - default

我认为必须有一个图像同时具有 ngnixphp,但这不是一种常用的方法。 另一个问题是: 它是如何工作的,因为它们将是独立的容器,都安装相同的代码库?

【问题讨论】:

  • 每个容器仅用于一项服务。

标签: php docker nginx docker-compose


【解决方案1】:

你没有映射你的 Nginx 配置文件,这就是全部的区别。

配置文件指定所有对 PHP 文件的请求都应传递到 PHP 容器。所有非 PHP 文件都直接由 Nginx 容器提供。

【讨论】:

    【解决方案2】:

    因为每个容器都应该运行一个服务。设计模式应该是它运行一个服务,然后当它完成时它会自行停止。正好 nginx 和 php 需要不断的监听,所以不会自然停止

    【讨论】:

      猜你喜欢
      • 2014-01-06
      • 1970-01-01
      • 2014-08-08
      • 2023-01-26
      • 2018-10-10
      • 1970-01-01
      • 2021-03-30
      • 1970-01-01
      • 2020-08-03
      相关资源
      最近更新 更多