Skip to content

Latest commit

 

History

History
84 lines (63 loc) · 2.11 KB

README.md

File metadata and controls

84 lines (63 loc) · 2.11 KB

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.

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

User Guide

On first run, admin account and his token is generated and prited into console.

You will need this to access management api, 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:

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:

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"
}