https://github.com/gomvn/gomvn
Self-hosted private maven repository.
https://github.com/gomvn/gomvn
java maven maven-repository self-hosted
Last synced: 6 months ago
JSON representation
Self-hosted private maven repository.
- Host: GitHub
- URL: https://github.com/gomvn/gomvn
- Owner: gomvn
- License: mit
- Created: 2020-06-05T23:32:49.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2020-06-09T14:11:44.000Z (about 6 years ago)
- Last Synced: 2024-06-20T05:12:04.525Z (about 2 years ago)
- Topics: java, maven, maven-repository, self-hosted
- Language: Go
- Homepage:
- Size: 43 KB
- Stars: 23
- Watchers: 3
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
GoMVN
=====
A lightweight self-hosted repository manager for your private Maven artifacts.
Installation
------------
Use docker to install this tool. Image is available at [Docker HUB](https://hub.docker.com/r/gomvn/gomvn).
For better accesibility, map these docker volumes:
| Path | Description |
| ----------------- | ----------- |
| `/app/data` | app data for persistency |
| `/app/config.yml` | configuration from outside of container, copy [default config](https://raw.githubusercontent.com/gomvn/gomvn/master/config.yml) |
User Guide
----------
On first run, admin account and his token is generated and prited into console.
You will need this to access [management api](https://gomvn.docs.apiary.io/), which is used to set user access.
If you don't have more users, you can use already created admin accout to deploy and access your maven artifacts.
### How to create java library
Ensure that your `build.gradle` file contains configuration by this example:
```gradle
plugins {
id 'maven-publish'
id 'java'
}
publishing {
repositories {
maven {
def releasesRepoUrl = "http://my-private-repository.example.com/release"
def snapshotsRepoUrl = "http://my-private-repository.example.com/snapshot"
name = 'mlj'
url = project.version.endsWith('RELEASE') ? releasesRepoUrl : snapshotsRepoUrl
credentials {
username 'PUT HERE USERNAME'
password 'PUT HERE TOKEN'
}
}
}
publications {
maven(MavenPublication) {
groupId = 'com.example'
artifactId = 'library'
version = '1.0.0.RELEASE'
from components.java
}
}
}
```
### How to use your private maven repository
Append to your `build.gradle`:
```gradle
repositories {
mavenCentral()
maven {
url "http://my-private-repository.example.com/release"
credentials {
username project.mljMavenUsername
password project.mljMavenPassword
}
}
}
dependencies {
implementation "com.example:library:1.0.0.RELEASE"
}
```