Email or username:

Password:

Forgot your password?
WildPowerHammer

Я нихрена не понимаю, ааааааааа

Фух так б, есть мой ноут с nixos в локальной сети по условному 192.168.1.10, на нём forgejo который я пытаюсь через nix настроить, задача: сделать так чтоб я мог открыть 192.168.1.10/git/ и у меня чудесным образом открылась главная страница forgejo

Я попробовал например ставить DOMAIN = "0.0.0.0", ROOT_URL = "https://0.0.0.0/git" и HTTP_PORT = 80

Пробовал и в домен тоже пихать /git/ пробовал на стандартном порту :3000 но пока что получилось только со стандартными настройками по 192.168.1.10:3000

Дорогой @rf может кто может мне помочь, а то я щас помру от того как долго нужно ждать nixos-rebuild switch каждый раз когда что то меняю

14 comments
kurator88

@WildPowerHammer @rf так тебе надо поставить nginx который будет все запросы пихать на /git и 3000 порт

WildPowerHammer

@kurator88

Аааа, вот оно как, ну штош сегодня я буду страдать не только с forgejo и openssh, но и с nginx, спасибо за направление, может быть к завтру перестану быть таким оладушком и начну что то понимать в этом деле :blobfoxsignthx:

kurator88

@WildPowerHammer там все делается в 3 строчки конфига, не страдай :)

WildPowerHammer

@kurator88
Ну если не страдать тогда я ничего не пойму, а мне в первую очередь надо понять и уже во вторую шоб работало

[DATA EXPUNGED]
WildPowerHammer

@dmitry84
Не, я же говорю на стандартных настройках оно работает я могу подключится к forgejo но по ip:port а я хочу по ip/git/
@kurator88

Dmitry ☮️

@WildPowerHammer

Тогда удачных сношаний 🤷‍♂️

@kurator88

D:\side\

@WildPowerHammer я мельком глянул в шпаргалку по конфигу, по-моему Forgejo сам не поддерживает работу под префиксом пути, так что если заставлять, то только внешней reverse-проксёй (nginx, caddy, etc.), которая будет поддерживать у него иллюзию отсутствия префикса.

И даже так скорее всего будет сбоить фронтенд, которому об этом нюансе никто не сообщил.

* * *

Вообще это плохая идея, потому что другие приложения, что ты собираешься там размещать, будут иметь общий Origin (см. Same Origin Policy), общие куки, общий LocalStorage…

Можно, конечно, молиться, чтобы не было пересечений, но надёжнее будет просто сделать разным приложениям разные доменные имена, прописав им один и тот же IP хотя бы у себя на роутере. И чтобы раскидывать по ним запросы, всё ещё нужен какой-то reverse-proxy. Посоветовал бы nginx proxy manager, но сам проект его пакует только в докер-образ… может, кто-то со стороны сообщества NixOS упаковал, не знаю, посмотри.

@WildPowerHammer я мельком глянул в шпаргалку по конфигу, по-моему Forgejo сам не поддерживает работу под префиксом пути, так что если заставлять, то только внешней reverse-проксёй (nginx, caddy, etc.), которая будет поддерживать у него иллюзию отсутствия префикса.

И даже так скорее всего будет сбоить фронтенд, которому об этом нюансе никто не сообщил.

WildPowerHammer

@dside Ну nginx я уже старательно настраиваю по наставлению из другого ответа, а по поводу пересечений... тааак ну я не уверен что я еще смогу поднять полезного без покупки домена и как бы использовать я это планирую через zerotier в котором хрен чё настроишь, да и я чёт не понимаю как учитывая что у меня в распоряжении лишь один нетбук, хотя возможно у меня просто уже голова не варит

А вообще какие есть варианты? Я же не могу не меняя на всех устройствах в zerotier сети dns и не покупая например домен сделать это? Или могу?

@dside Ну nginx я уже старательно настраиваю по наставлению из другого ответа, а по поводу пересечений... тааак ну я не уверен что я еще смогу поднять полезного без покупки домена и как бы использовать я это планирую через zerotier в котором хрен чё настроишь, да и я чёт не понимаю как учитывая что у меня в распоряжении лишь один нетбук, хотя возможно у меня просто уже голова не варит

D:\side\

@WildPowerHammer с оговорками, но можешь. Покупая домен, ты по сути покупаешь место в публичном реестре доменов. Но если все оконечные устройства, с которых ты подключаешься, будут использовать указанный тобой DNS-сервер, то доменные имена, которые ты хочешь использовать, можно прописать и там. Или вообще на оконечных машинах напрямую, в файлах типа hosts.

Естественно, публично доверенный сертификат X.509 (для TLS) в таком случае тебе никто не даст, но если ваять внутренний DNS, самоподписанных сертификатов или самодельного Certificate Authority (корень которого добавить как доверенный на свои машины) вполне хватит. Это с одной стороны дополнительная морока, с другой ценный опыт администрирования внутренних сетей. Решай :blobcatfingerguns:

@WildPowerHammer с оговорками, но можешь. Покупая домен, ты по сути покупаешь место в публичном реестре доменов. Но если все оконечные устройства, с которых ты подключаешься, будут использовать указанный тобой DNS-сервер, то доменные имена, которые ты хочешь использовать, можно прописать и там. Или вообще на оконечных машинах напрямую, в файлах типа hosts.

WildPowerHammer

@dside Администрирование домашних сетей это конечно прекрасно и мне надо, но еще мне надо что бы я мог заставить одного человека, который есть у меня в сети zerotier и который не захочет делать что то с dns, перевести одну штуковину которую мы делаем (недосборку для минекрафта) с ЕБУЧЕГО ЯНДЕКС ДИСКА на гит, желательно на локальный так как я не хочу что бы нам могли настучать по голове за наглые нарушения всех лицензий и вот я сижу и думаю как быть

Пришла мысль сделать через тот же nginx перенаправление с айпи из одной zerotier'овской сети сразу на forgejo, а во всех остальных сетях где только мои устройства ваять всякое

@dside Администрирование домашних сетей это конечно прекрасно и мне надо, но еще мне надо что бы я мог заставить одного человека, который есть у меня в сети zerotier и который не захочет делать что то с dns, перевести одну штуковину которую мы делаем (недосборку для минекрафта) с ЕБУЧЕГО ЯНДЕКС ДИСКА на гит, желательно на локальный так как я не хочу что бы нам могли настучать по голове за наглые нарушения всех лицензий и вот я сижу и думаю как быть

D:\side\

@WildPowerHammer возможно, свой DNS-сервер можно указать в настройках клиентов zerotier и всё махинации производить на нём. Опыта с zerotier'ами, увы, не имею.

План с доступностью Forgejo и только Forgejo по голому IP тоже звучит работоспособно.

OfShad0ws

@WildPowerHammer

location / {
client_max_body_size 512M;
proxy_pass http://10.8.1.10:3000;
proxy_set_header Connection $http_connection;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}

Go Up