Задать вопрос
  • Как правильно написать docker-compose для postgresql?

    fzfx
    @fzfx
    lsnginterests, в таком случае скорее всего дело в том, что у этого контейнера гвоздями прибит volume с уже существующим дата-каталогом, в котором уже создана база с логином postgres и паролем postgres.
    контейнер postgres использует переменные среды POSTGRES_PASSWORD и POSTGRES_USER только в том случае, если внутри контейнера на момент запуска контейнера в /var/lib/postgresql отсутствует дата-каталог. (в этом случае произойдёт инициализация дата-каталога логином и паролем из упомянутых выше переменных среды). если же в момент запуска дата-каталог (с БД) уже существует - логин и пароль будут те, что прописаны в дата-каталоге в файлах БД, а не те, что указаны в указанных выше переменных.
    другими словами, POSTGRES_PASSWORD и POSTGRES_USER используются только при первичной инициализации БД, далее, если volume переиспользуется от запуска к запуску, логин и пароль используются из самой БД (то есть те же, что были указаны при первичной инициализации).
  • На основании чего PostgreSQL сортирует данные в JSONField?

    fzfx
    @fzfx
    пожалуйста, приложите данные в виде текста.
  • Как убрать ошибку 502 nginx?

    fzfx
    @fzfx
    MIHUTKA, я не знаю, что такое "ssl он видит, а сайт запустить не может".
  • Как убрать ошибку 502 nginx?

    fzfx
    @fzfx
    MIHUTKA, логи nginx обычно в /var/log, если только вы не переопределили этот путь директивой access_log в конфиге nginx. лог сервиса gunicorn - там, где указано в статье: в journalctl -u gunicorn.
  • Как убрать ошибку 502 nginx?

    fzfx
    @fzfx
    MIHUTKA, и тем не менее финальный результат - 502, не так ли? значит нужно разбираться, в чём же дело, разве нет?
    надо смотреть конфиги, читать логи.
    502 как правило намекает на то, что указанный в proxy_pass апстрим недоступен. следовательно, первым делом я бы проверил, есть ли файл /run/gunicorn.sock; какие на нём права; правильно ли написана директива proxy_pass в nginx; запущен ли gunicorn сервис; какой WorkingDirectory указан в файле сервиса; существует ли этот каталог действительно; существует ли в нём подкаталог, указанный в STATIC_ROOT приложения; какие на нём права; отдаётся ли какой-либо файл из этого каталога, если выполнить к nginx GET-запрос на отдачу этого файла (с учётом того, что в URL надо не забыть использовать STATIC_URL из конфигурации приложения).
  • Как убрать ошибку 502 nginx?

    fzfx
    @fzfx
    видать где-то ошибка. то ли в конфигах что-то не то с адресом, портом или сокетом; то ли приложение и вовсе не запущено; а может что-то другое.
    надо смотреть конфиги, читать логи.
  • Как настроить Nginx для запуска бота на вебхуках?

    fzfx
    @fzfx
    TheFlappy, да, значит: ссылка на доку
    Если директива proxy_pass указана с URI, то при передаче запроса серверу часть нормализованного URI запроса, соответствующая location, заменяется на URI, указанный в директиве:
    location /name/ {
        proxy_pass http://127.0.0.1/remote/;
    }

    ну ничего, зато на всю жизнь запомните. =)
  • Как настроить Nginx для запуска бота на вебхуках?

    fzfx
    @fzfx
    нет, SSL (HTTPS) на localhost:8080 (а значит и в докере на tcp/8080) нет. меняйте
    proxy_pass https://localhost:8080;
    на
    proxy_pass http://localhost:8080;
    в конфиге nginx, не забудьте перезапустить nginx.
    ошибка ушла или сохраняется? та же самая 502 или другая?
  • Как настроить Nginx для запуска бота на вебхуках?

    fzfx
    @fzfx
    TheFlappy, тогда советую убедиться, что приложение, то, что в контейнере, действительно принимает соединения по HTTPS.
    что говорит
    curl -ik https://localhost:8080/
    ?
  • Как настроить Nginx для запуска бота на вебхуках?

    fzfx
    @fzfx
    TheFlappy, похоже, что со стороны контейнера проблем нет. порт tcp/1080 хоста сопоставлен с портом tcp/1080 контейнера, и обращение с хоста не выдаёт ошибки об отказе в соединении, следовательно можно полагать, что внутри контейнера порт действительное слушается приложением.
    другое дело, что я не понимаю, какой конфиг nginx у вас сейчас актуальный. сначала вы запостили
    proxy_pass http://localhost:8080/;
    затем
    proxy_pass https://localhost:8080;
    затем последнее удалили. так что на самом деле? если первое - удалите первым делом слеш перед точкой с запятой, поскольку он вряд ли вам нужен. у этого слеша есть смысл - он меняет любой УРЛ из запроса, пришедшего в nginx в location / перед передачей в контейнер на /.
  • Как настроить Nginx для запуска бота на вебхуках?

    fzfx
    @fzfx
    TheFlappy, а что говорит (и говорит ли что-нибудь) команда
    timeout 2 bash -c 'cat < /dev/tcp/127.0.0.1/8080'
    ?
  • Как настроить Nginx для запуска бота на вебхуках?

    fzfx
    @fzfx
    TheFlappy, уже неплохо.
    а что насчёт команды
    docker inspect container_name | jq '.[].NetworkSettings.Ports'

    где container_name - имя контейнера с ботом?
  • Как настроить Nginx для запуска бота на вебхуках?

    fzfx
    @fzfx
    TheFlappy, что говорит команда ss -nltp sport 8080 (от рута)?
  • Как настроить Nginx для запуска бота на вебхуках?

    fzfx
    @fzfx
    TheFlappy, бот же сейчас запущен? что говорит команда ss -nltp sport 8080 (от рута)?
  • Как сформулировать редирект без слеша?

    fzfx
    @fzfx
    второе вообще похоже на циклический редирект.
    попробуйте в качестве регулярки:
    ^(?!index\.php)(.*)(?<!/)$
  • Почему из контейнера docker не доступен сетевой ресурс?

    fzfx
    @fzfx
    Cison AnyConnect создаёт свой виртуальный VPN-интерфейс, которому присваивает IP-адрес, настроенный клиентом на VPN-сервере для раздачи вам из диапазона IP-адресов своей VPN-сети. VPN-сервер ожидает соединений только с этого IP-адреса.
    Docker Compose поднимает свою сеть со своей адресацией, в VPN-сеть из сети Docker пакеты не попадут, а если вы даже их и смаршрутизируете - VPN-сервер их не примет - IP-адреса не его.
    Скорее всего копать в сторону настройки SNAT в iptables: при отправке пакета на IP-адрес ресурса в VPN-сети подменять адрес источника на IP-адрес виртуального VPN-интерфейса. Не факт что сработает - Cisco AnyConnect версия от версии всё более анально огораживается от всевозможных трюков с сетевыми настройками, подменами DNS-серверов и т. п. Работает классическое утверждение "повышение безопасности всегда ведёт к понижению удобства работы".
    Можете спросить у клиента, как вам быть в вашем случае: если им по силам поднять Cisco VPN, значит по идее и по силам предложить вам вариант, при котором доступ в VPN-сеть работать будет не только с вашей машины, но и из контейнеров на ней. Особенно если в вашей работе подразумевалось использование контейнеризации вами на вашей стороне.
    Ещё одна альтернатива - проксирование. На хосте ставите HAProxy, для нужных ресурсов из VPN-сети клиента настраиваете проксирование: входящие в HAProxy соединения по порту такому-то направлять на такие-то IP и порт из VPN-сети...
  • Почему Windows 10 не хочет устанавливаться на SSD m.2?

    fzfx
    @fzfx
    maxsmeller, начнём с того, что я человеку ничего не отвечал. но даже если бы это был мой ответ - я считаю, его неплохим, потому что, исходя из моего опыта, указанная причина и решение действительно помогают (в тех случаях, когда дело именно в этом конечно же): установочный образ винды действительно можно записать таким образом, что установка будет прерываться на этапе требования драйвера для контроллера дисков, и возможных причин тут две (по крайней мере я встречал две): указанная в твоём комментарии и в твоём ответе, и указанная в ответе с этой веткой комментариев. во втором случае подсовывания драйверов не помогут, а поможет только корректная запись образа (rufus'ом или нет - не столь важно, но с ним как-то реже лажают).
  • Почему не доходит сигнал ping?

    fzfx
    @fzfx
    Я правильно понял по картинке, соединения между первым и третьим компьютером у вас нет, но прохождения пинга вы всё же ждёте? Другими словами, "почему не доходит пинг, когда компьютеры никак не связаны"?
    p. s.: отдельно хотелось бы обратить внимание на то, что фраза "подаю сигнал" звучит применительно к IP-сетям несколько коряво. "отправляю ping-запрос" было бы уместнее.
  • Как правильно округлять числа меньше нуля?

    fzfx
    @fzfx
    ol3g228, оно в принципе не станет 0.4, пока оно имеет тип double, что с ним ни делай.
    статья на тему: https://habr.com/ru/articles/541816/