78 lines
3.3 KiB
Markdown
78 lines
3.3 KiB
Markdown
# PROJECT "MIRROR"
|
||
|
||
Зеркалирование артефактов Maven репозиториев.
|
||
|
||
## Как подключать "MIRROR" к сборщикам
|
||
|
||
### Gradle
|
||
|
||
```groovy
|
||
repositories {
|
||
maven {
|
||
url = "http://example.com:8080/maven/central"
|
||
}
|
||
}
|
||
```
|
||
|
||
Где `central` в URL - идентификатор зеркалируемого репозитория, указанного в файле настроек.
|
||
|
||
### Maven
|
||
|
||
```xml
|
||
<repositories>
|
||
<repository>
|
||
<id>mirror-central</id>
|
||
<url>http://example.com:8080/maven/central</url>
|
||
</repository>
|
||
</repositories>
|
||
```
|
||
|
||
Где `central` в URL - идентификатор зеркалируемого репозитория, указанного в файле настроек.
|
||
|
||
## Запуск и настройка
|
||
|
||
### Требования к запуску
|
||
|
||
- Java 17
|
||
|
||
### Настройка
|
||
|
||
_Пример настроек можно посмотреть в файле [application.properties](src/main/resources/application.properties)._
|
||
|
||
Создайте файл `config.properties` и укажите в нём следующие настройки
|
||
|
||
#### Общие настройки
|
||
|
||
| Настройка | Описание | Значение по-умолчанию |
|
||
|---------------------|-------------------------------------------------------------------|-----------------------|
|
||
| `server.addres` | Интерфейс, который будет прослушиваться | `0.0.0.0` |
|
||
| `server.port` | Порт, который будет прослушиваться | `8080` |
|
||
| `app.maven.storage` | Путь к папке, в которую будут сохраняться отзеркаленные артефакты | `storage` |
|
||
|
||
#### Настройки репозиториев
|
||
|
||
Значение `[0]` в настройках указывает на порядковый номер. Сам порядок ни на что не влияет, однако каждая следующая
|
||
настройка репозитория должна увеличивать это значение на единицу: `[0]`, `[1]`, `[2]` и так далее.
|
||
|
||
| Настройка | Описание |
|
||
|--------------------------------------|------------------------------------------------------------------------|
|
||
| `app.maven.repository[0].id` | Уникальный идентификатор репозитория |
|
||
| `app.maven.repository[0].url` | URL репозитория |
|
||
| `app.maven.repository[0].cache-time` | Сколько времени хранить информацию о не найденных ресурсах (в минутах) |
|
||
|
||
### Запуск
|
||
|
||
```shell
|
||
bin/project-mirror --spring.config.location=path/to/config.properties
|
||
```
|
||
|
||
## Сборка из исходников
|
||
|
||
```shell
|
||
gradle installBootDist
|
||
```
|
||
|
||
В директории `build/install/project-mirror-boot` будут находиться
|
||
скрипты запуска (в `bin`)
|
||
и само приложение (в `lib`).
|