Как стать автором
Обновить

Комментарии 33

попробовал xwiki через docker - при входе в WEB-интерфейс начинает отсчет процентов инициализации - на 50% падает.

Пользуемся Outline уже примерно год (8 юзеров), однако огорчает последний релиз). Есть проблемы в совместном редактировании, загрузкой определенной типов файлов, но в целом продукт неплохой. Намного легче WikiJS в плане UX, очень похожа на Notion. Сейчас лучше сделать делать форк проекта и собрать свой образ, добавив русскую локаль, если нужно - автор вырезал поддержку русского языка. Также отлично себя ведет данная Wiki и на внутреннем домене с самоподписным SSL. Только лучше пустить её через Traefik или NPM. Кстати с Authelia тоже работает. Единственное нужно постоянно мониторить Issue проекта на гитхабе - иногда после обновлений не работают миграции, но там все описывается.

Действительно - 18 августа вышла новая версия (71-я) уже без русского языка...печаль.

Добавить его не сложно, особенно если остались старые релизы. Но само отношение разработчика немного раздражает, уже много кто из FOSS комьюнити нарушает собственные Code of Conduit))) Но это дело привычное)) Самое главное держать под рукой форк и проверять на зловреды или эксплоиты на русской локали или в отношении российских IP адресов, такое тоже к сожалению бывает. Закоммитить может кто угодно и что угодно.

Проверил на версии: flameshikari/outline-ru:0.82.0

Все работает по моему алгоритму.

19.02.2024 - проверил статью на чистой виртуалке с белым IP на внешнем хостинге.
Работает - только пришлось пару опций поменять в первом docker-compose файле (true вместо 1).

Я разворачивал примерно в это же время на podman, его podman-compose как-то, похоже, неправильно преобразовывал значения (вместо true передавал в env True, и keycloak не мог переварить такое кощунство). В итоге просто убрал эти опции - думаю, раз у нас nginx проксирует, можно на его уровне следить за именем хоста и обязательностью шифрования.

Спасибо за подробный туториал! А я не так давно разворачивал себе TiddlyWiki попробовать... Так же прост как и DocuWiki, наверное, веб-интерфейс олдскульный, все как мы любим))

Запустил у себя, по состоянию на 22.09.2024 все отлично работает. PostgreSQL только свой имеющийся подключил, чтоб не плодить их, люблю когда все в одном месте) Автору большой респект от меня) за замечательный и подробный туториал.

Пожалуйста!

Однако, 4 октября поменялась версия с KeyCloak, там теперь по другому нужно его запускать и инициализировать. Пока разбираться лень и некогда, поэтому обходной вариант, указать в docker-compose файле версию 25:

было:
image: quay.io/keycloak/keycloak:latest
стало:
image: quay.io/keycloak/keycloak:25.0

Все остальное пока не сильно поменялось, проверил только что на тестовой ВМ за 0.16 баксов в день )

Подтверждаю. Обновил недавно образы Outline и Keycloak, которые по этой статье разворачивал, и не смог запустить последний Keycloak. гайды по апгрейду есть, но не захотелось разбираться, тоже прибил гвоздями версию 25. Надеюсь, к тому времени, как Outline перестанет работать с 25 версией Keycloak, уже появится возможность локальной аутентификации, без необходимости городить отдельное решение.

Кстати, у вас не появлялось проблемы такой - часто после таймаута сессии, когда заново вводишь учётные данные в форму Keycloak, сначала вылазит ошибка, что аутентифицировать не удалось, но если нажать "Продолжить", всё равно успешно заходит.

Не сталкивался - так как Outline не использую, я ж старовер и любитель Dokuwiki )))))

Просто в личку задал вопрос человек, пока переписывались, быстро все проверил на свежей виртуалке. И вечером ее планирую удалять. Не люблю сложные инструменты (черные ящики).

Кстати, у вас не появлялось проблемы такой - часто после таймаута сессии, когда заново вводишь учётные данные в форму Keycloak, сначала вылазит ошибка, что аутентифицировать не удалось, но если нажать "Продолжить", всё равно успешно заходит.

похоже, что у меня эта штука не проявляется - в отдельной вкладки 4 часа видел этот новый Outline, пока я делами занимался.
Сейчас переключился, потыкал, живое, авторизовано. Т.е. по timeout меня никуда не выкинуло.

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

Удалось поймать ошибку, появляется после страницы аутентификации Keycloak, и судя по логотипу, страница ошибки принадлежит уже самому Outline -

Если нажать Continue With Keycloak, то аккаунт успешно загружается.

У меня в Keycloak пользователь проходит авторизацию, сессию вижу активную, но в Outline попасть не могу — скрин как у вас. При нажатии на кнопку появляется опять эта-же ошибка.

файл /etc/hosts правили ?

Да... Также понижал версию Keycloak до 25-й (удалив все volumes на всякий), эффект такой-же. В логе нашел ` "error":"unable to verify the first certificate","level":"error","message":"Error during authentication","stack":"Error: unable to verify the first certificate" `, но непонятно, что за первый сертификат. В NGINX подкладываю цепочку сертификатов, остальное все работает. При этом SSL-трафик на NGINX терминируется же, далее по http должно работать?

Завтра может время найду, проверю. месяца 3 назад все работало )

Сертификаты от Lets Encrypt, или же из вашего CA ?

Lets Encrypt на wildcard *.my-domain.ru

вот, кстати, такой вариант я не проверял - у меня всегда был сертификат на 3 отдельных имени.

Проверил на новой виртуалке - сертификаты получал на 3 имени - алгоритм работает (с KeyCloak 25.0) буква в букву...

Выпустил сертификат на три конкретных имени (вместо wildcard), все заработало... Еще раз спасибо земляку за помощь!

Файл /etc/hosts

root@wiki:/opt/outline# cat /etc/hosts
127.0.0.1       localhost

195.2.74.155    wiki.dorlasufa.ru kk.dorlasufa.ru minio.dorlasufa.ru

Любопытно - проверил алгоритм на виртуалке с серым IP (и проброшенными портами TCP/80 и TCP/443 - сейчас идут ошибки:

{"error":"connect ECONNREFUSED 193.233.XXX.XX:443","level":"error","message":"Error during authentication","stack":"Error: connect ECONNREFUSED 193.233.XXX.XX:443\n    at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1607:16)"}
{"error":"connect ECONNREFUSED 193.233.XXX.XX:443","level":"error","message":"Error during authentication","stack":"Error: connect ECONNREFUSED 193.233.XXX.XX:443\n    at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1607:16)"}
{"error":"connect ECONNREFUSED 193.233.XXX.XX:443","level":"error","message":"Error during authentication","stack":"Error: connect ECONNREFUSED 193.233.XXX.XX:443\n    at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1607:16)"}
{"error":"connect ECONNREFUSED 193.233.XXX.XX:443","level":"error","message":"Error during authentication","stack":"Error: connect ECONNREFUSED 193.233.XXX.XX:443\n    at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1607:16)"}

Образ Outline использовал другой (с русской локалью - https://github.com/flameshikari/outline-ru), сертификат на 3 DNS имени.

В /etc/hosts прописаны DNS на серый IP:

root@wiki:~# cat /etc/hosts
127.0.0.1       localhost

10.200.118.130  wiki.dorlasufa.ru kk.dorlasufa.ru minio.dorlasufa.ru

Т.е. - несмотря на то, что я на Linux в /etc/hosts прописал серый IP, контейнер с Outline получает по DNS имени внешний IP-адрес - т.е. игнорирует внешний /etc/hosts, а использует свой какой то DNS-сервер.

Решил проблему - в Микротик, который является маршрутизатором для данной виртуальной машины, создал DNS-запись статическую.

10.200.118.130 kk.dorlasufa.ru

И все заработало, смог попасть в Outline.

У меня как раз на микротике в DNS эти записи уже были прописаны, но проблема была. Попробую сгеренить три отдельных сертификата на три имени и повторю эксперимент. Спасибо!

Три отдельных делать не нужно и ошибочно, нужно одну пару ключей на 3 имени. Просто при заказе укажите все имена через пробел.

Появилась заметка, как запускать 26-ю версию KeyCloak через Docker:

https://medium.com/@kenzamarchouk/deploying-keycloak-with-docker-38fe36f34b95

Попробовал, кажись работает:

Запуск
Запуск
Журнал запуска и итоговый набор контейнеров
Журнал запуска и итоговый набор контейнеров
Проверка входа и версии
Проверка входа и версии

К Outline пока не адаптировал, рука не поднимается )))

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации