Tadeusz
upstream hujpizda { server 1.2.3.4:80; } proxy_pass http://hujpizda;
Александр
В моём nginx-контейнере в логах внутренний ip: nginx_1 | 172.18.0.1 - - [09/Dec/2017:15:49:28 +0300] "GET /nomenclature?_dc=1512823768537&id_1c=00-00004020 HTTP/1.1" 200 451 "https://kis-test.u-k-s.ru/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36" "10.10.1.77"
Tadeusz
set_real_ip_from tvoj_proxy_server_ip;
Александр
В nginx-proxy: include /etc/nginx/proxy.conf; server { server_name site.ru; listen 443 ssl http2 ; access_log /var/log/nginx/access.log vhost; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:!DSS'; ssl_prefer_server_ciphers on; ssl_session_timeout 5m; ssl_session_cache shared:SSL:50m; ssl_session_tickets off; ssl_certificate /etc/nginx/certs/site.ru; ssl_certificate_key /etc/nginx/certs/site.ru; add_header Strict-Transport-Security "max-age=31536000"; location / { proxy_pass http://site.ru; } }
Tadeusz
ты хочешь видеть в логах IP клиента реального, не проксирующий сервер, так?
Александр
set_real_ip_from tvoj_proxy_server_ip;
Это во внутреннем?
Александр
ага
Tadeusz
да, в том, где у тебя видится серый IP
Александр
теперь прилетает 10.10.1.77 =)
Александр
хотя может это и есть мой внешний адрес...
Александр
да, поменял ip - прилетел мой внешний адрес, спасибо!
Tadeusz
нет проблем
Александр
А маска для докера - где узнать какая она может быть? 172.18.0.0/16 или 172.0.0.0/8 ?
Александр
на интерфейсе докера?
Александр
docker inspect: "IPAM": { "Driver": "default", "Options": null, "Config": [ { "Subnet": "172.18.0.0/16", "Gateway": "172.18.0.1" } ] },
Александр
Всегда такая маска создаётся у bridge сети?
Tadeusz
какую создашь, такая и будет 😛
Александр
docker create network <name> =)
Tadeusz
docker create network <name> =)
docker network create --driver=bridge --subnet=192.168.0.0/16 br0
Tadeusz
https://docs.docker.com/engine/reference/commandline/network_create/#specify-advanced-options
Александр
ну это то понятно, по умолчанию он как определяет маску?)
Tadeusz
Docker uses the default 172.17.0.0/16 subnet for container networking.
Александр
Если кто столкнётся: В конфиг сайта добавил: server { # ... real_ip_header X-Forwarded-For; set_real_ip_from 172.18.0.0/16; }
Tadeusz
бгг
Александр
Странно, у меня 172.18.0.0/16
Александр
да, я видел 0.0.0.0; ваще
если нужно подделывать real ip, то видимо, это важно для приложения. Нафиг всем разрешать)
Tadeusz
ну я против 0.0.0.0 из соображений сосурити
Александр
Хотя с другой стороны, этот контейнер вообще не торчит никуда, в него проксирует другой nginx, который и торчит наружу и проставляет насильно этот заголовок
Александр
никто подделать и не сможет
Tadeusz
resolver тоже под твоим контролем, тем не менее, был найден баг в нем
Tadeusz
resolver 8.8.8.8; например
Александр
Короче, нужно прописывать маску)
Александр
на dev-серваке 172.21.0.0/16. Короче, расширил маску до /8 =)
Bogdan
поставил Portainer.io. Там можно сразу по всем контейнерам графики смотреть, а то приходится в запущенные контейнеры заходить, потом выбирать нужный, потом выбирать ссылку на статистику и графики еще не сохраняются, а с момента открытия окна начинают считаться.
Bogdan
да больше управление, статистика, как я понял там на последнем месте
a1eXei
спасибо, надо будет поковырять)
Александр
Это как я поломал? Я указал в конфиге nginx доверенный диапазон
Александр
Это как я поломал? Я указал в конфиге nginx доверенный диапазон
Александр
=)
Александр
неадекват какой-то
Александр
Всё правильно, я тебе задал вопрос, и хотел получить на него ответ. Чтобы ты увидел мой вопрос, тебе пришла уведомляшка
Vyacheslav
Что за негатив?
Vyacheslav
Не общайся с людьми, если не можешь терпеть их привычки)
Bogdan (SirEdvin)
Не общайся с людьми, если не можешь терпеть их привычки)
Так они его хайлайтят же, сложно игнорировать
Vyacheslav
так зачем тогда отвечать на сообщения, если он не хочет продолжения беседы
Vyacheslav
так-то и через собаку можно уведомлять
Vyacheslav
@SirEdvin
Vyacheslav
ну может фетиш у кого-то дёргать репостом)
Sun
В защиту реплаев даже на предыдущее сообщение могу сказать, что я часто переключаюсь между чатами сразу после отправки. Без нормального реплая могу просто пропустить ответ
Bogdan
а кто как вообще следит за контейнерами: сколько cpu используют, памяти и места? что-нибудь для ленивых и чтобы по url доступно было?
Bogdan (SirEdvin)
Не всегда запоминает. Если больше 400 сообщений, то может пролистать
Vyacheslav
Просто надо быть проще
Vyacheslav
нервные клетки не восстанавливаются, зачем жопу рвать попусту
Vyacheslav
http://rancher.com/comparing-monitoring-options-for-docker-deployments/ https://stefanprodan.com/2016/a-monitoring-solution-for-docker-hosts-containers-and-containerized-services/ последнее шикарно выглядит
Bogdan
@TheGringer спасибо, последняя ссылка как раз то что я ищу. портейнер классная штука, но то что там статистики нет - большой минус кмк. а твоя ссылка просто красота
Vyacheslav
5 или 6 ссылка в гугле)
Vyacheslav
docker monitoring
Bogdan
а там надо было до середины страницы прокрутить чтобы нужную картинку увидеть )))
Vyacheslav
docker web monitoring ну да, пятая сслыка
Владислав
Кто юзал(ет) Selenium, подскажите, пожалуйста, что я не так делаю?
Владислав
db: image: mysql:5 env_file: docker/mysql/local.env smtp: build: docker/smtp ports: - "1080:1080" selenium: image: selenium/standalone-chrome volumes: - .:/app webpack: build: docker/webpack links: - web volumes: - .:/app ports: - "3000:3000" - "3001:3001" command: npm run watch web: build: . links: - db - smtp - selenium volumes: - .:/app # ports: # - "8080/tcp:8080" command: ./artisan serve --host=0.0.0.0 --port=8080
Владислав
При запуске теста он не может найти искомую строку. Проверил курлом - выдал мне вот такой HTML.
Владислав
https://hastebin.com/jowajapeke.sql - лог контейнера после запуска теста
Владислав
Тупо что-то не может загрузить и всё, но подключается по верному адресу.
Anonymous
Тупо что-то не может загрузить и всё, но подключается по верному адресу.
Ну, так в логе ведь ответ This site can?t be reached\nlocalhost refused to connect.\nTry:\nChecking the connection\nChecking the proxy and the firewall\nERR_CONNECTION_REFUSED\nReload\nDETAILS
Александр
В логе: "message":"http://localhost:3000/ - Failed to load resource: net::ERR_CONNECTION_REFUSED" В конфиге: ./artisan serve --host=0.0.0.0 --port=8080
Александр
Или на webpack тестишь?
Владислав
loclhost -> 0.0.0.0 ?
Владислав
Интергационные тесты, Laravel Dusk. Хочу для начала проверить наличие текста по такому-то роуту.
Александр
ну а почему на localhost:3000 идёшь?
Александр
Снаружи тест запускается?
Александр
А, из селениума
Владислав
Снаружи не пробовал. На локалхост он сам идёт, т.к. именно такой APP_URL указан в .env. Сейчас попробую изменить.
Александр
надо из селениума идти на web:8080
Александр
типа ты laravel-приложение запускаешь в web, а тесты запускаются в selenium и открывают страницы в web?
Владислав
Гм, да, верно.