@maksam07

Как настроить связку Docker-compose (Nginx, Django, Unicorn, Postgres), чтобы по разным доменам открывались разные проекты (не только django)?

Добрый день. Я даже не знаю какой сложности этот вопрос. Я уже около 4 дней ищу информацию, но все впустую.
Предположим я делаю связку по такой инструкции: https://testdriven.io/blog/dockerizing-django-with...
Там вконце репозиторий на гитхабе есть
Но по этой инструкции, чтобы открыть сайт нужно вводить после имени домена еще и порт
Я пошел дальше:
1. Создал сеть: docker network create nginx-proxy
2. В отдельном композе сделал настройку для Nginx, чтобы он прослушивал 80 и 443 порт и конфиг:
spoiler
5fc77d3b19e31644348804.png
5fc77d4442b70074102512.png

3. В проекте джанго я удалил блок с энджинкс, т.к. он больше не нужен.
spoiler
5fc77de08df42115321139.png

И оба компоса соединил, добавленной на первом пункте, сетью

И все бы хорошо, теперь сайт открывается по адресу localhost, но у меня не открываются статичные изображения, т.к. энджинкс теперь не знает где их искать. И я теперь не могу понять, что мне делать дальше. Как энжинксу в одном контейнере сказать, что файлы нужно искать в определенной папке другого контейнера? или я вообще все не правильно делаю? За эти несколько дней я облазил наверное более нескольких десятков страниц, но за статические файлы я ни где инфу не нашел. Буду благодарен, если тыкнете носом, как правильно задать работу энжинска на работу разных проектов с разными доменами в разных контейнерах
  • Вопрос задан
  • 227 просмотров
Пригласить эксперта
Ответы на вопрос 1
@dooMoob
1) чтобы не вводить порт после домена, контейнерный nginx надо заставить слушать 80 порт, а не 1337, либо ставить еще один nginx на хосте, который бы проксировал определенные запросы на 1337
2) чтобы nginx смог раздавать статику с другого контейнера, у этих контейнеров должен быть общий volume
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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