Возникают ситуации когда проект разрастается, появляются другие разработчики и меняются ответственные за проект, а то и просто проходит время, что все всё забывают. Поэтому появляется необходимость создавать документацию. Есть много вариантов каким инструментом пользоваться, один из самых мощных среди таких можно назвать Confluence от Atlassian, но на фоне всех его плюсов в нем есть огромный недостаток (особенно для маленьких команд) — это его цена. В качестве одного из аналогов можно воспользоваться свободно распространяемыми движками, например docuwiki.
Установка
Современный мир уже не представляется без использования docker, да и разворачивание docuwiki на отдельной машине в принципе не отличаются от установки обычного сайта, но с докером проще и быстрее.
В hub.docker.com есть не мало образов с docuwiki в том числе и миллионами pull, возьмем тот, у которого их больше всего: https://hub.docker.com/r/bitnami/dokuwiki
Напишем простенький docker-compose.yml
:
version: '3'
services:
docuwiki:
image: bitnami/dokuwiki:latest
volumes:
- ./data:/bitnami/dokiwiki
environment:
- DOKUWIKI_PASSWORD=secret
- DOKUWIKI_USERNAME=superuser
ports:
- "8080:8080"
- "8443:8443"
в environment
есть ещё переменные, их можно уточнить в документации основного образа
после запуска docker-compose up -d
можно зайти по адресу localhost:8080
и начинать работу.
Начало работы
Самый большой вопрос — как создать страницу. Ответ прост. Необходимо набрать в поиске адрес страницы или в адресной строке и вы увидите предложение по созданию новой страницы. Обязательно необходимо прочитать документацию по неймспейсам, в этом случае у вас будет строиться некоторое дерево документов. В целом документация у docuwiki очень подробная
Установка своих шаблонов
Стандартный устанавливаемый по-умолчанию шаблон выглядит просто. В целом этого достаточно, но если хочется какие-то другие формы представления или хотя бы добавить например sidebar, то можно установить свой шаблон (хотя sidebar можно добавить и с помощью расширения — extension).
- Скачиваем шаблон отсюда https://www.dokuwiki.org/template чтобы найти с sidebar ищем sidebar
- Распаковываем архив
- копируем в папку lib/tpl (внутри контейнера он находится тут
/bitnami/dokuwiki/lib/tpl
) - в контейнер можно скопировать через команду
docker cp templatename/ docuwiki_container_name_1:/bitnami/dokuwiki/lib/tpl
- теперь шаблон можно сменить в настройках docuwiki
Отключить регистрацию и чтение для гостей
Отключить чтение для гостей (или какой-то другой группы) можно из управления acl
Отключить регистрацию можно из параметра в файле /bitnami/dokuwiki/conf/dokuwiki.php
параметр $conf['disableactions'] = 'search,register';
в данном случае отключен ещё и поиск
https://www.dokuwiki.org/ru:config:disableactions
По идее чтобы каждый раз не лазать внутрь контейнера и в случае когда образ будет удален из системы все настройки не пропали, можно прокинуть директорию с настройками через volume