МинДок: введение
МинДок — это простая и удобная система управления документацией, разработанная для IT-команд.
Предшественником МинДока является SmartWiki — система управления документацией на основе PHP-фреймворка Laravel. Однако из-за сложности развёртывания PHP для обычных пользователей, было решено использовать Golang для разработки. Это делает систему более удобной для развёртывания и использования.
Целью разработки было создание системы для управления и обмена интерфейсами проектов для нужд IT-отдела компании. Функциональность и интерфейс системы были вдохновлены Kancloud.
Система может использоваться для хранения документации по интерфейсам, баз данных, руководств и других документов. Она включает в себя управление проектами, пользователями и правами доступа, что удовлетворяет потребности большинства малых и средних команд в управлении документацией.
Демонстрационный сайт: http://doc.iminho.me.
Установка и использование
Если на вашем сервере не установлена программа Golang, необходимо вручную установить переменную среды ZONEINFO со значением MinDoc/lib/time/zoneinfo.zip.
Для получения дополнительной информации см. руководство пользователя: MinDoc Руководство пользователя.
Пользователи без опыта работы с Golang могут загрузить скомпилированную программу с https://github.com/lifei6671/mindoc/releases.
Разработчики с опытом работы с Golang рекомендуется выполнить компиляцию и установку. Перед этим необходимо установить официальный инструмент управления пакетами Golang. См. Install dep.
git clone https://github.com/lifei6671/mindoc.git
dep ensure
go build -ldflags "-w"
./mindoc install
./mindoc
При использовании MySQL для хранения данных кодировка должна быть utf8mb4_general_ci. Перед установкой необходимо заполнить конфигурацию проекта в файле conf/app.conf в каталоге проекта.
При использовании SQLite базы данных достаточно настроить путь к базе данных в конфигурационном файле.
Если каталог conf не содержит файл app.conf, необходимо переименовать app.conf.example в app.conf.
По умолчанию программа автоматически создаёт суперпользователя с именем admin и паролем 123456. После входа рекомендуется изменить пароль.
# Настройка почты
# Включить почту
enable_mail=true
# SMTP-сервер
smtp_user_name=admin@iminho.me
# Адрес SMTP-сервера
smtp_host=smtp.ym.163.com
# Пароль
smtp_password=1q2w3e__ABC
# Порт
smtp_port=25
# Адрес отправителя
form_user_name=admin@iminho.me
# Срок действия письма 30 минут
mail_expired=30
Использование Docker для развёртывания
Docker-пользователи могут обратиться к файлу Dockerfile в проекте для создания образа.
Во время запуска образа необходимо предоставить следующие переменные среды:
DB_ADAPTER Тип БД
MYSQL_PORT_3306_TCP_ADDR Адрес MySQL
MYSQL_PORT_3306_TCP_PORT Порт MySQL
MYSQL_INSTANCE_NAME Имя MySQL
MYSQL_USERNAME Имя пользователя MySQL
MYSQL_PASSWORD Пароль MySQL
HTTP_PORT Адрес прослушивания программы
Пример:
docker run -p 8181:8181 --name mindoc -e DB_ADAPTER=mysql -e MYSQL_PORT_3306_TCP_ADDR=10.xxx.xxx.xxx -e MYSQL_PORT_3306_TCP_PORT=3306 -e MYSQL_INSTANCE_NAME=mindoc -e MYSQL_USERNAME=root -e MYSQL_PASSWORD=123456 -e httpport=8181 -d daocloud.io/lifei6671/mindoc:latest
Скриншоты проекта
Создание проекта:
Список проектов:
Обзор проекта:
Участники проекта:
Настройки проекта:
Редактор Markdown на основе Editor.md:
Насыщенный текстовый редактор на основе wangEditor:
Предварительный просмотр проекта:
Панель администратора:
Используемые технологии
Мы будем рады, если вы сообщите о проблеме или сделаете запрос на извлечение (pull request) в проекте MinDoc на GitHub.
Если вы ещё не знакомы с моделью разработки Fork and Pull на GitHub, вы можете прочитать документацию GitHub (https://help.github.com/articles/using-pull-requests), чтобы получить больше информации.
Не совсем PHP-разработчик, не совсем свободный программист на Go.
Платежи доступны через:
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )