svnWebUI — это графический веб-интерфейс для управления сервером Subversion. Это мощный инструмент для установки и конфигурации сервера SVN.
github: https://github.com/cym1102/svnWebUI
Группа поддержки QQ 1: 1106758598
Группа поддержки QQ 2: 560797506
Электронная почта: cym1102@qq.com
Код для пожертвований WeChat
svnWebUI представляет собой графический инструмент для управления конфигурацией Subversion. Несмотря на то что Git широко используется сегодня, SVN всё ещё имеет множество сценариев применения, таких как управление и совместное использование документов внутри компаний. Концепция SVN значительно проще, чем у Git, поэтому она идеально подходит для использования непрофессионалами.
Однако известно, что конфигурирование пользователей и прав доступа на серверах Subversion под управлением Linux осуществляется через ручное редактирование конфигурационных файлов, что является сложным и неудобным процессом. Уже существуют несколько графических интерфейсов, но они очень старые, трудоёмкие для установки и зависят от устаревших сред выполнения.
На Windows существует хороший сервер SVN VisualSVN, однако он предназначен для использования на Windows-серверах, которые встречаются реже, а также не имеет веб-интерфейса, требует открытия удалённого рабочего стола для каждого изменения конфигурации, что снижает безопасность.После нескольких неудачных попыток создания графического интерфейса было решено создать современный инструмент управления сервером SVN, который обеспечивает легкость использования, аналогичную Gitea.
Проект основан на Java с использованием фреймворка Solon и базой данных H2. Таким образом, на сервере нет необходимости устанавливать внешнюю базу данных, хотя проект также поддерживает MySQL.
Для локальной установки программы необходимо сначала установить Subversion и использовать протокол svn:\ для checkout.
Для версии Docker нет необходимости устанавливать дополнительные программы, достаточно использовать протокол http:\ для checkout.
Ubuntu:
apt update
apt install openjdk-11-jdk
apt install subversion
CentOS:
yum install java-11-openjdk
yum install subversion
Windows:
Скачайте и установите JDK https://www.oracle.com/java/technologies/downloads/
Скачайте и установите VisualSVN https://www.visualsvn.com/server/download
Остановите и деактивируйте службы VisualSVN через службу управления сервисами
Установите переменные окружения JAVA
JAVA_HOME : каталог установки JDK
Path : JDK_Install_Directory/bin
Перезапустите компьютер
Linux: mkdir /home/svnWebUI/
wget -O /home/svnWebUI/svnWebUI.jar https://gitee.com/cym1102/svnWebUI/releases/download/1.8.9/svnWebUI-1.8.9.jar
```Windows: Прямым образом используйте браузер для загрузки https://gitee.com/cym1102/svnWebUI/releases/download/1.8.9/svnWebUI-1.8.9.jar в D:/home/svnWebUI/svnWebUI.jar
```Для новых версий достаточно заменить версию в пути
### Запуск программы
```markdown
Linux: nohup java -jar -Dfile.encoding=UTF-8 /home/svnWebUI/svnWebUI.jar --server.port=6060 > /dev/null &
Windows: java -jar -Dfile.encoding=UTF-8 D:\home\svnWebUI\svnWebUI.jar --server.port=6060
Параметры описания (все они являются необязательными):
--server.port порт, который будет использоваться; по умолчанию используется порт 6060
--project.home директория конфигурационных файлов проекта, где хранятся данные репозитория, базы данных и т.д.; по умолчанию это /home/svnWebUI/
--database.type=mysql использовать другую базу данных; если параметр не указан, то используется локальная база данных H2
--database.url=jdbc:mysql://ip:port/dbname url базы данных
--database.username=root имя пользователя базы данных
--database.password=pass пароль базы данных
Обратите внимание, что команде следует добавить символ &
, чтобы указать, что программа должна работать в фоновом режиме
Для данного проекта создан образ Docker, поддерживающий платформы x86_64/arm64, он также включает Subversion, Apache2 и svnWebUI. В отличие от версии jar, версия Docker позволяет использовать протокол HTTP для доступа к SVN.
Ubuntu:
apt install docker.io
CentOS:
yum install docker
docker pull cym1102/svnwebui:latest
docker run -itd -v /home/svnWebUI:/home/svnWebUI -e BOOT_OPTIONS="--server.port=6060" --privileged=true -p 6060:6060 -p 3690:3690 cym1102/svnwebui:latest
```или из китайского источника
```bash
docker run -itd -v /home/svnWebUI:/home/svnWebUI -e BOOT_OPTIONS="--server.port=6060" --privileged=true -p 6060:6060 -p 3690:3690 registry.cn-hangzhou.aliyuncs.com/cym19871102/svnwebui:latest
Обратите внимание:
Необходимо отобразить порты 6060 и 3690; порт 6060 используется для веб-страниц, а порт 3690 — для стандартного порта SVN.
Контейнеру требуется отображение пути /home/svnWebUI:/home/svnWebUI
, этот путь содержит все данные проекта, включая базу данных, конфигурационные файлы, журналы и т.д. При обновлении образа Docker эти данные будут сохранены. Обратите внимание на необходимость резервного копирования.
Параметр -e BOOT_OPTIONS
можно заполнить теми же параметрами, что и при запуске jar.
Используется Maven для компиляции и упаковки
mvn clean package
Используется Docker для создания образа
docker build -t svnwebui:latest .
[Unit]
Description=SvnWebUI
After=syslog.target
After=network.target
[Service]
Type=simple
User=root
Group=root
WorkingDirectory=/home/svnWebUI
ExecStart=/usr/bin/java -jar -Dfile.encoding=UTF-8 /home/svnWebUI/svnWebUI.jar
Restart=always
[Install]
WantedBy=multi-user.target
После чего выполните:
systemctl daemon-reload
systemctl enable svnwebui.service
systemctl start svnwebui.service
Откройте http://ip:6060
для доступа к главной странице
При первом открытии страницы вам потребуется зарегистрироваться как администратор.
После завершения регистрации войдите на страницу входа.
Личная информация, где вы можете просмотреть имеющиеся у вас репозитории и изменить пароль пользователя.
Управление сервисами, где можно проверить состояние запущенного Subversion-сервера и остановить или перезапустить его.
Управление репозиториями, позволяющее добавлять новые репозитории и изменять существующие. После добавления нового репозитория вы получаете адрес SVN, с которым можно работать при включенном состоянии Subversion-сервера.
Выберите нужного пользователя для предоставления ему разрешений на репозиторий, возможно ограничить разрешения до конкретной директории.
Выберите группу для предоставления ей разрешений на репозиторий, также возможно ограничить разрешения до конкретной директории.
Управление пользователями позволяет добавлять и редактировать пользователей. Пользователи делятся на два типа: администраторы и обычные пользователи. Обычные пользователи могут видеть только свои данные, а администраторы имеют полный доступ ко всем данным платформы.
Управление группами позволяет добавлять и редактировать группы.
Если вы забыли свой пароль входа, воспользуйтесь следующими инструкциями для его восстановления:
svnWebUI
pkill java
svnWebUI.jar
с параметром восстановления пароляjava -jar svnWebUI.jar --project.home=/home/svnWebUI/ --project.findPass=true
--project.home — это путь к каталогу проекта
--project.findPass — это параметр вывода имени пользователя и пароля
После успешного запуска программа выведет все имена пользователей и пароли.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )