Задать вопрос
  • Почему Microk8s ingress не редиректит к поду?

    Код 503 на ингресс-контроллере с вероятностью 99.9% означает, что ингресс не знает куда направить запрос. Например нет ни одного пода.

    То что у service приложения нет внешнего ip это нормально.

    А вы проверяли что под вообще отвечает если напрямую в него запрос сделать? У вас очень странные конфиги. Я не знаю специфику вашего случая, но на мой вкус тут много неправильных вещей.
  • Надо ли ставить на саму машину или можно в Docker?

    OwDafuq, да особо никаких. Это самый простой вариант.
    Однако контейнеризация и дженкинса и агента (со всеми необходимыми инструментами) даёт больше надёжности - вам уже не надо будет руками всё настраивать если вдруг что-то случится с сервером. Ну и упрощает я масштабирование - можно как поднять два-три агента на одной машине, так и вынести их на отдельные.
  • Как использовать istio virtualservice внутри кластера вне mesh сети?

    Даниил Муйдинов, а как вы проверяете что запросы идут куда надо? Смотрите логи всех подов? Запрос шлете из пода?
    Вы рестартанули деплоймент чтобы в поды заинжектились сайдкары?
    У вас в манифесте написано балансировать по заголовку, а в запросе вы передаёте не заголовок, а queryString.
    Вы уверены, что вам нужно балансировать именно так? Получается что у вас не stateless система, это добавит вам проблем в будущем.
  • Как создать автозапуск команды в linux?

    mercower26, при запуске программ через systemd они запускаются в фоне без открытия терминала. Нет необходимости уводить их в фон другими способами.
    Даже наоборот - чтобы запустить программу как сервис типа simple, нужно чтобы она не уходила в фон сама.
    Просто пропишите в unit файл команду запуска самого soketi, без screen и других способов запуска в фоне.
  • Как автоматически выдавать регион и id?

    В вопросе слишком много неоднозначно слов. Что такое регион? А что такое машина? Может вы говорите о регионах в автомобильных гос.номерах? Или имеете в виду машины-сервера и регионы их размещения в облаке? Или регионы тут это субъекты РФ?
  • Почему не работает внутреняя авторизация на nginx ларавел?

    Иван, вот и разгадка. Веб-приложение не просто использует тот же заголовок для авторизации, но и вообще использует для авторизации тот же механизм - basic. Тут точо сменить заголовок не получится.
    Но зато вы можете написать свой middleware вместо этого, который, если сайт на бою, проверяет авторизацию, а если на dev-сервере, то ничего не делает и не мешает авторизации nginx.
  • Почему не работает внутреняя авторизация на nginx ларавел?

    youmixx, basic авторизация работает через заголовок Authorization.
    Его устанавливает браузер и отслеживает nginx.
    Ну а в веб-приложении этот же заговок скорее всего устанавливается в JS коде, а обрабатывается каким-нибудь middleware.
  • Почему не работает внутреняя авторизация на nginx ларавел?

    youmixx, это хорошо что вы редактируете код на dev сервере и закрываете его авторизацией, так и надо. Так все делают. И по хорошему, ваш сайт должен быть готов к тому, чего его могут запустить в разных окружениях с немного разными настройками. Учитывая что вы используете laravel, вам не составит труда добавить т.н. env переменную, которая включает и отключает полное закрытие сайта авторизацией. Я не говорю что именно так и нужно сделать, но фраза "у меня гит и боевой сайт тоже получит эти настройки" не является оправданием.

    Изменить используемый заголовок не всегда возможно. Нужно править код, а он может быть не ваш - ну там пакет какой-нибудь установлен.
  • Как отдавать docker container с сервера по адресу домена?

    bengur2, чтобы по разным доменам открывались разные веб-приложения, вам необходим http прокси, который на основании домена, указанного в http запросе, будет проксировать этот запрос на тот или иной внутренний адрес.
    Обычно для этого устанавливают nginx, который сам слушает 80 и 443 порты.
    Все домены настраивают так, чтобы вели на адрес этого сервера.
    В конфиге nginx описывают какое приложение должно отвечать по определённому домену, примерно вот так:
    server {
        listen 80;
        server_name site-1.domain.com;
        location / {
            proxy_pass http://127.0.0.1:27073;
        }
    }
    server {
        listen 80;
        server_name site-2.domain.com;
        location / {
            proxy_pass http://127.0.0.1:12345;
        }
    }


    Однако если у вас контейнер на сервере и по 127.0.0.1:27073 не отвечает, то сначала нужно решить эту проблему.
  • Как отдавать docker container с сервера по адресу домена?

    bengur2, адрес 0.0.0.0 указывается чтобы показать, что сервис слушает порт на всех адресах. Проверять его бессмысленно, нужно проверять конкретный адрес сервера - тот что вы прописали в dns. Надеюсь в dns вы прописали именно публичный ip этой машины.

    Проверка localhost показывает что порт недоступен. Возможно подключение на него закрыто через файрвол.

    Почему вы вообще используете нестандартный порт для веб-приложения?
  • Как отдавать docker container с сервера по адресу домена?

    bengur2, 504 это код ответа протокола http. А вы публикуете 5000 порт контейнера как 27073 порт машины. Вы уверены что там внутри веб-приложение, а не что-то другое?
    Если да, то ещё интересно как именно вы проверяете доступность.
    Ну т.е. в браузере вводите домен? В порт указываете? Если не указть, то порт будет подставлен по умолчанию - 80 или 443 в зависимости от протокола http/https.
    Ещё информация о привязке домена к ip адресу может обновляться довольно долго. Может даже несколько часов. А ещё браузер может кэшировать старое значение для этого домена.

    Чтобы проверить что информация о домене обновилась, нужно использовать программы dig/nslookup.
    После того как убедитесь что домен ведёт на нужный ip, перезапустите браузер.
    Вводя адрес указывайте порт, т.к. у вас он нестандартный.
    Если результат вас не удовлетворяет, проверьте доступность порта используя telnet или nc.
    Если не доступен, то нужно будет смотреть на сервере, может он закрыт.
  • Как добавить приватный ключ в SSH Agent навсегда?

    Евгений Заливадный, пароль осложняет дело. Вообще я имел в виду добавление ключа в агент при включении компьютера. Там уже есть варианты как делать, например через profile, который выполняется только при login, а не при каждом открытии консоли. Ну или systemd юнит написать.
    Наверное есть способ эмулировать ввод пароля средствами bash, однако это идёт против самой идеи запароленного ключа.

    Что касается .bashrc, то этот вариант тоже можно использовать, и в случае с паролем, возможно именно он и нужен. Просто нужно написать немного кода, который проверит наличие ключа в агенте, и добавит если его нет. Т.е. ввод пароля будет только при первом открытии терминала.
  • Как добавить приватный ключ в SSH Agent навсегда?

    Не уверен что это сработает. Тут указывается ключ, который нужно использовать при подключении, но ssh клиент может и не регистрировать его в агенте.
    Это логично если подумать о безопасности - совсем не обязательно это же ключ будет необходим для доступа на конечный сервер, так зачем светить его через агент?
  • Могу ли я читать данные в Nginx?

    tem12qaz, вы можете вынести map в отдельный файл, генерировать его чем хотите, и в этот момент посылать nginx'у сигнал чтобы он перечитал конфиг.
  • Могу ли я читать данные в Nginx?

    tem12qaz, вам стоит описать подробнее ваш случай.
    Из того что указано в тексте вопроса можно сделать вывод, что вам достаточно функций nginx
  • Можно ли использовать WebpackDevServer на продакшене?

    outplayedrq, стоит отметить, что хотя необходимость изучать смежные технологии зависит от размера компании, и где-то фронтендер не может знать про сервера, а где-то бэкендер может не знать про фронт, но всё же, на каком-то базовом уровне понимать что будет происходить с приложением дальше, полезно.
    Если же вы в одиночку разрабатываете, то вам просто необходимо уметь и web-сервер настроить, и СУБД установить, и много чего ещё.
  • Как я могу связать BackEnd с FrontEnd?

    outplayedrq, да, конечно, webpack dev server подойдёт.
    Тут главно не забывать, что бэк надо запускать отдельно и ajax запросы надо делать на адрес бэка.
  • Как я могу связать BackEnd с FrontEnd?

    outplayedrq, отладочный сервер про который я писал - это только чтобы раздавать статику. Только чтобы в браузере вы открывали localhost:8080 а не file:///path/to/dist
    Такой сервер никоим образом не способствует связи фронта с бэком.
    Вот пример такого сервера https://www.npmjs.com/package/serve
  • Как я могу связать BackEnd с FrontEnd?

    outplayedrq, не совсем. У вас просто какой-то веб-сервер должен раздавать результаты сборки фронта.
    Это не обязательно дополнительный сервер, но может быть и так. В зависимости от выбранного подхода надо будет делать ajax запросы на тот же или на другой домен (точнее порт).
    Используйте раздачу статики через express вашего бэка и не парьтесь.

    axios это универсальный http клиент. Он работает как в браузере, так и в nodejs. Если ваш бэк должен делать куда-то запросы - ну пусть делает, axios тут хороший выбор.
    А если вы придумываете как делать запросы с фронта на бэк, то вам не надо думать про axios на бэке, просто используйте его на фронте.

    P.S. по вопросу "fetch vs axios" не подскажу. Как вам удобнее делать ajax запросы так и делайте. Я бы делал через axios, потому что я с ним итак работаю, и мне кажется что у него больше настроек.
  • Github, Как отправить файлы на удаленный репо, если сменил название локальной папки проекта?

    JZorkiy, git - это децентрализованная система контроля версий.
    Т.е. ваш локальный репозиторий, и тот что на сервере гитхаба на самом деле оба являются полноценными и даже независимыми. Но вы можете связать репозитории. Точнее ветки.
    Обычно это происходит автоматически.
    Вы можете привязать локальную ветку даже к нескольким друим репозиториям.
    Традиционно первый удалённый репозиторий назывется origin.
    И чтобы отличить локальную ветку от такой же, но в связанном репозитории, к её названию добавляется название удалённого репозитория.
    У вас ветка main связана с веткой origin/main, и впринципе для любой другой локальной ветки может существовать её "клон" если вы эту ветку пушили на гитхаб.