Size: a a a

DevOps — русскоговорящее сообщество

2021 February 16

VC

Vladimir Chernyshev in DevOps — русскоговорящее сообщество
Не выходи из комнаты.
Я про веб-сервисы: бек и фронт. Оба крутит нжинкс
так если один nginx вообще никаких проблем с некоторых пор: один адрес и один порт могут шарить разные серверы для ssl/tls
источник

VC

Vladimir Chernyshev in DevOps — русскоговорящее сообщество
Сергей
Коллеги, привет
Возникла проблема с получением реального IP клиента в такой конфигурации:
Контейнер с nginx и приложением запущен композом (не сварм):
...
front:
 networks:
   test_network:
     ipv4_address: 10.5.0.4
...
networks:
 test_network:
   driver: bridge
   ipam:
     config:
       - subnet: 10.5.0.0/16
         gateway: 10.5.0.1

конфиг nginx в этом контейнере:
location / {
 proxy_set_header        Host                    $host;
 proxy_set_header        X-Real-IP               $remote_addr;
 proxy_set_header        X-Forwarded-Proto       https;
 proxy_set_header        X-Forwarded-For         $proxy_add_x_forwarded_for;

 root   /usr/share/nginx/html;
 index  index.html;
 try_files $uri $uri/ /index.html;
}

На хосте в этот контейнер запросы проксируются через nginx хостовой машины:
location / {
 proxy_set_header        Host                    $host;
 proxy_set_header        X-Real-IP               $remote_addr;
 proxy_set_header        X-Forwarded-Proto       https;
 proxy_set_header        X-Forwarded-For         $proxy_add_x_forwarded_for;

 proxy_pass http://front;
}

Суть проблемы в том, что если ходить через хостовый nginx, то в приложении клиентские ip - это ip докера, если ходить напрямую в nginx в контейнере - то все нормально. Есть ли возможность получения правильных ip при обращении через хостовый nginx, не меняя driver в композе на host и без шаманства с iptables?
а откуда приложение его берет?
источник

С

Сергей in DevOps — русскоговорящее сообщество
Да не суть
Там в логах nginx видно, что адрес не тот
Если прямо в контейнер идти, то адрес верный
Через хост - адрес докера
источник

VC

Vladimir Chernyshev in DevOps — русскоговорящее сообщество
Сергей
Да не суть
Там в логах nginx видно, что адрес не тот
Если прямо в контейнер идти, то адрес верный
Через хост - адрес докера
да как не суть? там два заголовка с адресами передается приложению, адрес конечного клиента только в одном
источник

С

Сергей in DevOps — русскоговорящее сообщество
Я хочу сначала разобраться с логами. Почему в них в разных случаях разные адреса?
источник

VC

Vladimir Chernyshev in DevOps — русскоговорящее сообщество
Сергей
Я хочу сначала разобраться с логами. Почему в них в разных случаях разные адреса?
в каком поле лога?
источник

С

Сергей in DevOps — русскоговорящее сообщество
Попозже скину скрин, отошёл
источник

VC

Vladimir Chernyshev in DevOps — русскоговорящее сообщество
последнему nginx приходят два IP - писать в лог он может любой из них или оба, или вообще не писать
источник

С

Сергей in DevOps — русскоговорящее сообщество
Я не помню версию, посмотрю
источник

D

DevOps Help Bot in DevOps — русскоговорящее сообщество
@thordendal here it is.
User commands:
- /man - send list of commands to chat
- /coc - send code of conduct to user
- /jobs - send rules of publishing job opportunities and cv
- /ad - send rules of publishing advertising
- /chats - send list of friendly chats
- /events - send list of events to user
- /starter - send starter kit to user
- /middle - send middle kit to user
- /tasks - send user pack of DevOps tasks
- /course - send to user list list of courses
- /cert - send user list of certification tips & tricks
- /relocate - send user list of relocate chats and channels
- /report - forward replied message to admin chat and send link of replied message for fast-navigation
источник

D

DevOps Help Bot in DevOps — русскоговорящее сообщество
Report on spam message was send to admins. Please be patient.
источник

D

DevOps Help Bot in DevOps — русскоговорящее сообщество
Report on spam message was send to admins. Please be patient.
источник

D

DevOps Help Bot in DevOps — русскоговорящее сообщество
Report on spam message was send to admins. Please be patient.
источник

С

Сергей in DevOps — русскоговорящее сообщество
Vladimir Chernyshev
последнему nginx приходят два IP - писать в лог он может любой из них или оба, или вообще не писать
на хосте 1.14.2
в контейнере 1.15.7
лог на скрине
источник

VC

Vladimir Chernyshev in DevOps — русскоговорящее сообщество
Сергей
на хосте 1.14.2
в контейнере 1.15.7
лог на скрине
пустой какой-то лог, добавьте X-Real-IP, X-Forwared-For
источник

VC

Vladimir Chernyshev in DevOps — русскоговорящее сообщество
и должны увидеть свой IP, конфигит-то у вас навскидку верные, похоже смотрите не туда
источник

С

Сергей in DevOps — русскоговорящее сообщество
туда
если зайти прямо в контейнер, то IP корректный
источник

С

Сергей in DevOps — русскоговорящее сообщество
это лог из контейнера
источник

С

Сергей in DevOps — русскоговорящее сообщество
щас добавлю log_format, скину более подробный
источник

|

|Atlas| in DevOps — русскоговорящее сообщество
Привет, подскажите, когда пакет публикуется в github packages, он не появляется в общедоступном нпм? (Ну грубо говоря его нельзя в самом нпм найти?)
источник