docker + nginx + node.js + php-fpm

var $=jQuery.noConflict();

$(document).ready(function(){
    // jQuery code is in here
});

Отдать должное Ashwani Panwar и Cyssoo ответ: https://stackoverflow.com/a/29341144/3010027

1
задан Reuben barton 3 March 2019 в 18:26
поделиться

1 ответ

Я много раз устанавливал обратные прокси с apache и nginx, и я всегда находил это занятие трудоемким (его нелегко тестировать и отлаживать).

С тех пор, как я начал работать с docker и docker-compose, я нашел гораздо более простой способ настроить службу обратного прокси и теперь могу тратить свое время на приложения. Этот простой способ заключается в использовании службы Traefik в вашем файле компоновки Docker:

version: "3"
services:

  reverseproxy:  # see https://docs.traefik.io/#the-traefik-quickstart-using-docker
    image: traefik
    command: --docker
    ports:
      - "80:80"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

  backend:
    image: someapp
    expose: 
      - 8080
    labels:
      traefik.frontend.rule: PathPrefixStrip:/api
      traefik.port: 8080

  frontend:
    image: nginx
    volumes: 
      - ./www:/usr/share/nginx/html/:ro
    expose:
      - 80
    labels:
      traefik.frontend.rule: PathPrefixStrip:/
      traefik.port: 80

Как вы можете видеть, все правила обратного прокси указываются как метки [112 ] на целевых контейнерах. Traefik довольно хорошо справляется с работой обратного прокси-сервера, корректно обрабатывая HTTP / 2, веб-сокеты, перенаправляя заголовки, ... Это довольно экономит время.

0
ответ дан Thomasleveil 3 March 2019 в 18:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: