Nikita
там прописано чет, но интересно то, что оно через раз отдаёт нормальный ответ
Nikita
server { listen 80; root /app; # API Proxy location /api/ { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-NginX-Proxy true; proxy_set_header Connection ""; proxy_http_version 1.1; proxy_pass http://node:4000/api/; } location /subscriptions { proxy_pass http://node:4000/subscriptions; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } # To make sure any assets can get through :) location / { try_files $uri @rewrites; } # If no asset matches, send it to your javascript app. Hopefully it's a route in the app! location @rewrites { rewrite ^(.+)$ /index.html last; } }
Ευγένιος
Добрый день. При загрузке образов, вылетает ошибка Time-out TSL, по адресу https://dseasb33srnrn.cloudfront.net/ а тут идёт ссылка на конфиг определённого образа. Так вот вопрос, это мне РКН в тапок нагадил или что ещё? Адрес этот недоступен нигде. Везде время ожидания превышено.
Nikita
хеелп плиз (:
Ευγένιος
А что открылось?
Yevhen
Ευγένιος
Вот вот, мне тоже такое открывается, но когда дело доходит до получения конфигов образа, пишет тайм-оут.
Nikita
ох, немного локализовал ошибку location /api/ { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-NginX-Proxy true; proxy_set_header Connection ""; proxy_http_version 1.1; proxy_pass http://node:4000/api/; } вот такая запись есть внутри нгинкс конфига, который внутри докера есть сервис node с expose 4000, и при обращении к серверу через раз то ОК то 404, а если заменить на proxy_pass http://92.53.22.222:4000/api/; и вместо expose выбрасывать порт наружу, то всё работает
Nikita
может кто то сталкивался с таким?
Nikita
сервер на экспрессе, редиректы из фронта на реакте
Nikita
причем 404 отдает именно экспресс, в заголовках пишет x-powered-by: Express
Nikita
в логах пусто никаких ошибок не вижу (
B
powered-by: Express
B
значит уже пришло к node
B
покажи роут который /api/
Nikita
app.get('/api/test', (req, res) => { console.log('OKtest123123123'); res.end('OK'); });
Nikita
вот ))
Nikita
когда запрос успешный - в логе вижу OKtest123123123, а когда пишет Cannot GET /api/test то в логе тоже ничего нет
Nikita
оно как то доходит до ноды, даже до експресса, но до роутов как то не доходит
Nikita
и в логах ничего нет
Nikita
и это если через внутренние линки компоуза работать
Nikita
когда апи наружу выбросил и в нгинксе редирект на реальный IP то всё норм
Nikita
Artem
Апа крутится в одном компоузе с nginx?
Nikita
В одном
Anonymous
Есть ецс от авс, контейнер нжинкс и контейнер пыхи. Все пытался прикрутить туда фейл2бан (тоже контейнером) но он ниукакую не хочет банить. ( Я так понимаю он должен писать в айпитейблес самого инстанса
Anonymous
Кто проходил ?
Artem
В одном
В самом компоузе сервис с приложение как назван?
Anonymous
Фейл2бан на что?
На 22 и на логи нжинкса ( по лимит рейту)
Artem
Так нджинкс в контейнере, какой там 22 порт? Или у вас там ещё ssh стоит?)
Anonymous
Фейл2бан чекает лог смаунченый в него
Anonymous
Лог секур самого инстанса
Anonymous
И лог нжинкса
Anonymous
Все это чудо работает на убунте на диджитал оушене
Anonymous
На ецс оптимайзед Ами от амазона -ннт
Artem
Чет выглядит как какой то велосипед)
Anonymous
Ок, есть ецс на авс, там контейнер пыхи и нжинкса
Anonymous
Таких ецс дохера
Anonymous
Допустим 10 штук
Anonymous
Это 10 инстансов
Anonymous
Как на каждом из них сделать фейл2бан ?
Anonymous
Кастомное Ами - не подходит
Artem
Зачем вообще фейл2бан, если можно ограничить доступ к серверам с определенных ip для ссш
Artem
Вы как то не так юзаете амазон
Anonymous
Ок по ссх разобрались
Anonymous
Дальше
Anonymous
Лимит рейт
Anonymous
В нжинксе
Anonymous
Нужно банить того, кто превышает его
Anonymous
Бандить тех кто запрашивает /wp-login
B
когда запрос успешный - в логе вижу OKtest123123123, а когда пишет Cannot GET /api/test то в логе тоже ничего нет
напиши обработчик 404 ошибки и узнаеш на какой путь оно питается ити
Dmitrii
Какой самый простой способ сделать так чтобы две сетки докера видели друг друга?
Dmitrii
Кейс такой: сервисы от докер композ и PHPStorm который запускает докер хэлпер но он в другой сетке
Dmitrii
Из за этого ничего не работает 😕
Dmitrii
iptables это конечно и дураку понятно но лезть в iptables при наличии докера что-то не особо есть желание
Yevhen
External network в одном композе с указанием на нетворк во втором
Yevhen
docker-compose + external container - Stack Overflow https://stackoverflow.com/questions/39067295/docker-compose-external-container
Yevhen
Кстати, в доках доступно описано
Yevhen
Dmitrii
Есть проблема...
Dmitrii
Как мне эту сеть заттачить если контейнер то есть то нету?
Dmitrii
Его создает IDE
Je
Его создает IDE
ide не может создавать, найди скрипты запуска и допиши в run --network=your_network_name, которую создай заранее
Dmitrii
Ну не полезу же я в их джарники править
Dmitrii
Короче проблем было две
Dmitrii
1) Эти мудаки не поддерживают docker-compose версии > 2
Dmitrii
2) Если указывать environment то все съебывается. (может оно как раз из 3ей версии?)
Dmitrii
Поэтому ENV я унес в Dockerfile'ы
Dmitrii
И ей полегчало
Je
Что за IDE? чтобы мы знали, какую использовать нельзя)
Dmitrii
Ну для PHP других нет — PHPStorm.
Artem
Artem
Пак стикеров никогда не подводит))