Artipie alternatives and similar libraries
Based on the "Distribution" category.
Alternatively, view artipie alternatives based on common mentions on social networks and blogs.
-
JavaPackager
:package: Gradle/Maven plugin to package Java applications as native Windows, MacOS, or Linux executables and create installers for them.
InfluxDB - Purpose built for real-time analytics at any scale.
Do you think we are missing an alternative of Artipie or a related project?
README
Artipie is a binary artifact management tool, similar to Artifactory, Nexus, Archiva, ProGet, and many others. The following set of features makes Artipie unique among all others:
- It is open source (MIT license)
- It is horizontally scalable, you can add servers easily
- It is written in reactive Java (using Vert.x)
- It supports Maven, Docker, [Rubygems](./examples/gem), Go, Helm, Npm, NuGet, Composer, Pip, Rpm, Debian, Anaconda and others
- It is database-free
- It can host the data in the file system, Amazon S3 or in a storage defined by user
- Its quality of Java code is extraordinary high :)
Learn more about Artipie in our Wiki.
Quickstart
Artipie is distributed as Docker container and as fat jar
. The jar
file can be downloaded on the
GitHub release page and here is a
Wiki page describing how to start it.
The fastest way to start Artipie is by using Docker container. First, make sure you have already installed Docker Engine.
Then, open command line and instruct Docker Engine to run Artipie container:
docker run -it -p 8080:8080 -p 8086:8086 artipie/artipie:latest
It'll start a new Docker container with latest Artipie version, the command includes mapping of two
ports: on port 8080
repositories are served and on port 8086
Artipie Rest API and Swagger
documentation is provided.
A new image generate default configuration, prints a list of running repositories, test
credentials and a link to the Swagger documentation to console. To check
existing repositories using Artipie Rest API:
- go to Swagger documentation page
http://localhost:8086/api/index-org.html
, choose "Auth token" in "Select a definition" list, - generate and copy authentication token for user
artipie/artipie
, - switch to "Repositories" definition, press "Authorize" button and paste the token
- then perform
GET /api/v1/repository/list
request. Response should be a json list with three default repositories:json [ "artipie/my-bin", "artipie/my-docker", "artipie/my-maven" ]
Artipie server side (repositories) is served on8080
port and is available on URIhttp://localhost:8080/{username}/{reponame}
, where{username}
is the name of the user and{reponame}
is the name of the repository. Let's put some text data into binary repository:commandline curl -X PUT -d 'Hello world!' http://localhost:8080/artipie/my-bin/test.txt
With this request we added filetest.txt
containing text "Hello world!" into repository. Let's check it's really there:commandline curl -X GET http://localhost:8080/artipie/my-bin/test.txt
"Hello world!" should be printed in console.
Do dive in dipper into Artipie configuration, features, explore repositories and storages settings, please, address our Wiki.
Default server configuration in Docker Container refers to /var/artipie/repos
to look up for
repository configurations. You may want to mount local configurations <your-local-config-dir>
to /var/artipie/repos
to check and edit it manually.
Important: check that
<your-local-config-dir>
has correct permissions, it should be2020:2021
,
to change it correctly usechown -R 2020:2021 <your-local-config-dir>
.
If you have any question or suggestions, do not hesitate to create an issue or contact us in
Telegram.
Artipie roadmap.
How to contribute
Fork repository, make changes, send us a pull request. We will review
your changes and apply them to the master
branch shortly, provided
they don't violate our quality standards. To avoid frustration, before
sending us your pull request please run full Maven build:
$ mvn clean install -Pqulice
To avoid build errors use Maven 3.2+ and please read contributing rules.
Thanks to FreePik for the logo.
*Note that all licence references and agreements mentioned in the Artipie README section above
are relevant to that project's source code only.