{"id":15690110,"url":"https://github.com/cirocosta/cartorio","last_synced_at":"2025-05-07T23:23:01.301Z","repository":{"id":73883709,"uuid":"177983363","full_name":"cirocosta/cartorio","owner":"cirocosta","description":"A read-only container image registry","archived":false,"fork":false,"pushed_at":"2019-06-01T02:07:01.000Z","size":872,"stargazers_count":8,"open_issues_count":10,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-31T15:11:33.291Z","etag":null,"topics":["container-image","docker","kubernetes","oci","oci-image"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cirocosta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"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}},"created_at":"2019-03-27T11:50:44.000Z","updated_at":"2022-12-13T08:22:54.000Z","dependencies_parsed_at":"2023-09-21T11:15:43.425Z","dependency_job_id":null,"html_url":"https://github.com/cirocosta/cartorio","commit_stats":{"total_commits":99,"total_committers":2,"mean_commits":49.5,"dds":"0.010101010101010055","last_synced_commit":"15b9f1447c1e9d77755165d313a227fc7a0de322"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cirocosta%2Fcartorio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cirocosta%2Fcartorio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cirocosta%2Fcartorio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cirocosta%2Fcartorio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cirocosta","download_url":"https://codeload.github.com/cirocosta/cartorio/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252969056,"owners_count":21833403,"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":["container-image","docker","kubernetes","oci","oci-image"],"created_at":"2024-10-03T18:07:32.357Z","updated_at":"2025-05-07T23:23:01.279Z","avatar_url":"https://github.com/cirocosta.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cartório\n\n\u003e Serve your container images from a read-only registry.\n\n`cartorio` allows you to serve content from your local filesystem through the [Docker HTTP V2 Registry API](https://docs.docker.com/registry/spec/api/).\n\nIt currently supports the following filesystem formats:\n\n- docker tarball (what you get from [`docker save`](https://docs.docker.com/engine/reference/commandline/save/))\n- [OCI image layout](https://github.com/opencontainers/image-spec/blob/master/image-layout.md)\n- rootfs tarball / directory\n- [Concourse](https://concourse-ci.org/) [`image_resource`](https://concourse-ci.org/tasks.html#task-image-resource)\n\n\u003cbr /\u003e\n\n**Table of Contents**\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n\n\n- [Usage](#usage)\n  - [Docker](#docker)\n  - [Kubernetes](#kubernetes)\n- [Scope](#scope)\n- [LICENSE](#license)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n\n## Usage\n\n\nThe usage of `cartorio` requires only two steps:\n\n1. loading one or more container image(s) from a directory or tarball, then\n2. serving those container images to those implementing the [Docker Registry HTTP API v2](https://docs.docker.com/registry/spec/api/).\n\n\n\n### Docker\n\n```sh\n# save one (or more container images) from a docker \n# daemon to a tarball\ndocker save one-image another-image \u003e image.tar\n\n\n# load the image into a format that `cartorio` understands\n# and is able to use to serve the contents\ncartorio load --tarball=./image.tar\n\n\n# serve the images\ncartorio serve\n\n\n# pull the image from cartorio\ndocker pull $MACHINE_IP:5000/one-image\ndocker pull $MACHINE_IP:5000/another-image\n```\n\n\n### Kubernetes\n\nBeing `cartorio` a tool that can serve any amount of container images, the use of `cartorio` with Kubernetes\ncan fit multiple purposes, more interestingly:\n\n- providing the necessary infratructure images for bootstrapping an airgapped Kubernetes cluster, and\n- in a single container, distribute images that can't be retrieved fr\n\n\n\n## Scope\n\n`cartorio`'s scope is limited **only** to:\n\n- loading images into its blobstore for serving, and\n- serving container images that have been preloaded.\n\n\n\n## LICENSE\n\nApache License 2.0 - see [LICENSE](./LICENSE).\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcirocosta%2Fcartorio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcirocosta%2Fcartorio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcirocosta%2Fcartorio/lists"}