{"id":13591251,"url":"https://github.com/artipie/artipie","last_synced_at":"2025-05-15T03:08:47.502Z","repository":{"id":36965088,"uuid":"232444831","full_name":"artipie/artipie","owner":"artipie","description":"Binary Artifact Management Tool","archived":false,"fork":false,"pushed_at":"2025-02-25T06:15:23.000Z","size":99977,"stargazers_count":565,"open_issues_count":82,"forks_count":68,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-04-13T06:28:42.458Z","etag":null,"topics":["artifact-management","artifact-repository-manager","artipie","binary-repository-manager","brm","free-private-repository","java"],"latest_commit_sha":null,"homepage":"https://www.artipie.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/artipie.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.header","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-01-08T00:39:27.000Z","updated_at":"2025-04-13T05:27:52.000Z","dependencies_parsed_at":"2023-10-02T08:36:48.037Z","dependency_job_id":"8c1c5cf9-54c1-412b-b312-c28f17bc3729","html_url":"https://github.com/artipie/artipie","commit_stats":null,"previous_names":["yegor256/artipie"],"tags_count":192,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artipie%2Fartipie","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artipie%2Fartipie/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artipie%2Fartipie/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artipie%2Fartipie/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/artipie","download_url":"https://codeload.github.com/artipie/artipie/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254264771,"owners_count":22041794,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["artifact-management","artifact-repository-manager","artipie","binary-repository-manager","brm","free-private-repository","java"],"created_at":"2024-08-01T16:00:55.129Z","updated_at":"2025-05-15T03:08:42.468Z","avatar_url":"https://github.com/artipie.png","language":"Java","funding_links":[],"categories":["Java","工件仓库","项目","Projects","Tooling— Infrastructure and Artifacts Management"],"sub_categories":["分布","Distribution"],"readme":"\u003ca href=\"http://artipie.com\"\u003e\u003cimg src=\"https://www.artipie.com/logo.svg\" width=\"64px\" height=\"64px\"/\u003e\u003c/a\u003e\n\n[![Join our Telegramm group](https://img.shields.io/badge/Join%20us-Telegram-blue?\u0026logo=telegram\u0026?link=http://right\u0026link=http://t.me/artipie)](http://t.me/artipie)\n\n[![Javadoc](http://www.javadoc.io/badge/com.artipie/artipie.svg)](http://www.javadoc.io/doc/com.artipie/artipie)\n[![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/artipie/artipie/blob/master/LICENSE.txt)\n[![codecov](https://codecov.io/gh/artipie/artipie/branch/master/graph/badge.svg)](https://app.codecov.io/gh/artipie/artipie)\n[![Hits-of-Code](https://hitsofcode.com/github/artipie/artipie)](https://hitsofcode.com/view/github/artipie/artipie)\n![Docker Pulls](https://img.shields.io/docker/pulls/artipie/artipie)\n![Docker Image Version (latest by date)](https://img.shields.io/docker/v/artipie/artipie?label=DockerHub\u0026sort=date)\n\nArtipie is a binary artifact management tool, similar to\n[Artifactory](https://jfrog.com/artifactory/),\n[Nexus](https://www.sonatype.com/product-nexus-repository),\n[Archiva](https://archiva.apache.org/),\n[ProGet](https://inedo.com/proget),\nand many others.\nThe following set of features makes Artipie unique among all others:\n\n  * It is open source ([MIT license](https://github.com/artipie/artipie/blob/master/LICENSE.txt))\n  * It is horizontally scalable, you can add servers easily\n  * It is written in reactive Java (using [Vert.x](https://vertx.io/))\n  * It supports\n    [Maven](https://github.com/artipie/artipie/wiki/maven),\n    [Docker](https://github.com/artipie/artipie/wiki/docker),\n    [Rubygems](https://github.com/artipie/artipie/wiki/gem),\n    [Go](https://github.com/artipie/artipie/wiki/go),\n    [Helm](https://github.com/artipie/artipie/wiki/helm),\n    [Npm](https://github.com/artipie/artipie/wiki/npm),\n    [NuGet](https://github.com/artipie/artipie/wiki/nuget),\n    [Composer](https://github.com/artipie/artipie/wiki/composer),\n    [Pip](https://github.com/artipie/artipie/wiki/pypi),\n    [Rpm](https://github.com/artipie/artipie/wiki/rpm),\n    [Debian](https://github.com/artipie/artipie/wiki/debian),\n    [Anaconda](https://github.com/artipie/artipie/wiki/anaconda)\n    and [others](https://github.com/artipie/artipie/wiki/Configuration-Repository#supported-repository-types)\n  * It can host the data in the file system, [Amazon S3](https://aws.amazon.com/s3/) or in a storage defined by user\n\nLearn more about Artipie in our [Wiki](https://github.com/artipie/artipie/wiki).\n\n**Publications about Artipie:**\n- [An Easy Way to Get Your Own Binary Repository](https://dzone.com/articles/easy-way-to-get-your-own-binary-repository#)\n- [Private Remote Maven Repository With Artipie](https://dzone.com/articles/private-remote-maven-repository-with-artipie-1)\n- [Deployment of NPM Repositories with Artipie](https://dev.to/andpopov/deployment-of-npm-repositories-with-artipie-30co)\n- [How I use Artipie, a PyPI repo](https://opensource.com/article/22/12/python-package-index-repository-artipie)\n- [Готовим приватные репозитории с помощью Artipie](https://habr.com/ru/post/687394/)\n\n\n# Quickstart\n\nArtipie is distributed as Docker container and as fat `jar`. The `jar` file can be downloaded on the\nGitHub [release page](https://github.com/artipie/artipie/releases) and here is a \n[Wiki page](https://github.com/artipie/artipie/wiki#how-to-start-artipie-service-with-a-maven-proxy-repository) describing how to start it.\nThe fastest way to start Artipie is by using Docker container. First, make sure you have already installed [Docker Engine](https://docs.docker.com/get-docker/).\nThen, open command line and instruct Docker Engine to run Artipie container:\n\n```bash\ndocker run -it -p 8080:8080 -p 8086:8086 artipie/artipie:latest\n```\n\nIt'll start a new Docker container with latest Artipie version, the command includes mapping of two \nports: on port `8080` repositories are served and on port `8086` Artipie Rest API and Swagger \ndocumentation is provided.\nA new image generate default configuration, prints a list of running repositories, test \ncredentials and a link to the [Swagger](https://swagger.io/) documentation to console. To check \nexisting repositories using Artipie Rest API:\n- go to Swagger documentation page `http://localhost:8086/api/index.html`, \nchoose \"Auth token\" in \"Select a definition\" list,\n- generate and copy authentication token for user `artipie/artipie`,  \n- switch to \"Repositories\" definition, press \"Authorize\" button and paste the token \n- then perform `GET /api/v1/repository/list` request. \nResponse should be a json list with three default repositories:\n```json\n[\n  \"my-bin\",\n  \"my-docker\",\n  \"my-maven\"\n]\n```\nArtipie server side (repositories) is served on `8080` port and is available on URI \n`http://localhost:8080/{reponame}`, where `{reponame}` is the name of the repository. \nLet's put some text data into binary repository:\n```commandline\ncurl -X PUT -d 'Hello world!' http://localhost:8080/my-bin/test.txt\n```\nWith this request we added file `test.txt` containing text \"Hello world!\" into repository. Let's check\nit's really there:\n```commandline\ncurl -X GET http://localhost:8080/my-bin/test.txt\n```\n\"Hello world!\" should be printed in console.\n\nTo dive in deeper into Artipie configuration, features, explore repositories and storages settings,\nplease, address our [Wiki](https://github.com/artipie/artipie/wiki).\n\nDefault server configuration in Docker Container refers to `/var/artipie/repo` to look up for\nrepository configurations. You may want to mount local configurations `\u003cyour-local-config-dir\u003e` \nto `/var/artipie/repo` to check and edit it manually.\n\n\u003e **Important:** for provided Artipie docker containers `\u003cyour-local-config-dir\u003e` should have directory ownership set to `2021:2020`. To change it correctly use `sudo chown -R 2021:2020 \u003cyour-local-config-dir\u003e`.\n\nIf you have any question or suggestions, do not hesitate to [create an issue](https://github.com/artipie/artipie/issues/new) or contact us in\n[Telegram](https://t.me/artipie).  \nArtipie [roadmap](https://github.com/orgs/artipie/projects/3).\n\n## How to contribute\n\nFork repository, make changes, send us a pull request. We will review\nyour changes and apply them to the `master` branch shortly, provided\nthey don't violate our quality standards. To avoid frustration, before\nsending us your pull request please run full Maven build:\n\n```\n$ mvn clean install\n```\n\nTo avoid build errors use Maven 3.2+ and please read \n[contributing rules](https://github.com/artipie/artipie/blob/master/CONTRIBUTING.md).\n\nThanks to [FreePik](https://www.freepik.com/free-photos-vectors/party) for the logo.\n\n## How to release\n\nArtipie service is released in several formats: \n- [docker image in DockerHub](https://hub.docker.com/r/artipie/artipie)\n- [docker image based on Ubuntu](https://hub.docker.com/r/artipie/artipie-ubuntu)\n- jar archive with dependencies in GitHub release page ([example](https://github.com/artipie/artipie/releases/tag/v0.30.1))\n- asto modules, artipie-core, http-client, vertx-server and each adapter are released as jars into Maven central\n\nAll these distributions are created by GitHub [workflows](.github/workflows). To\npublish release, push tag starting with `v` into this repository masted branch:\n```bash\ngit tag v1.2.0\ngit push --tags origin\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fartipie%2Fartipie","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fartipie%2Fartipie","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fartipie%2Fartipie/lists"}