{"id":13798714,"url":"https://github.com/yandex/porto","last_synced_at":"2025-05-13T06:31:38.420Z","repository":{"id":56790857,"uuid":"41472626","full_name":"yandex/porto","owner":"yandex","description":"Yet another Linux container management system","archived":true,"fork":false,"pushed_at":"2023-01-20T09:43:15.000Z","size":59487,"stargazers_count":393,"open_issues_count":2,"forks_count":53,"subscribers_count":43,"default_branch":"master","last_synced_at":"2024-04-26T08:34:23.228Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yandex.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}},"created_at":"2015-08-27T07:39:46.000Z","updated_at":"2024-03-21T10:10:21.000Z","dependencies_parsed_at":"2023-02-12T01:15:49.202Z","dependency_job_id":null,"html_url":"https://github.com/yandex/porto","commit_stats":null,"previous_names":[],"tags_count":380,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yandex%2Fporto","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yandex%2Fporto/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yandex%2Fporto/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yandex%2Fporto/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yandex","download_url":"https://codeload.github.com/yandex/porto/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225183759,"owners_count":17434172,"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":[],"created_at":"2024-08-04T00:00:50.576Z","updated_at":"2024-11-18T13:31:30.798Z","avatar_url":"https://github.com/yandex.png","language":"C++","funding_links":[],"categories":["Containers"],"sub_categories":[],"readme":"Porto\n=====\n\n[![Build Status](https://travis-ci.org/yandex/porto.svg?branch=master)](https://travis-ci.org/yandex/porto)\n\n# OVERVIEW #\n\nPorto is a yet another Linux container management system, developed by Yandex.\n\nThe main goal is providing single entry point for several Linux subsystems\nsuch as cgroups, namespaces, mounts, networking, etc.\nPorto is intended to be a base for large infrastructure projects.\n\n## Key Features\n* **Nested containers**       - containers could be put into containers\n* **Nested virtualizaion**    - containers could use porto service too\n* **Flexible configuration**  - all container parameters are optional\n* **Reliable service**        - porto upgrades without restarting containers\n\nContainer management software build on top of porto could be transparently\nenclosed inside porto container.\n\nPorto provides a protobuf interface via an unix socket /run/portod.socket.\n\nCommand line tool **portoctl** and C++, Python and Go APIs are included.\n\nPorto requires Linux kernel 3.18 and optionally some offstream patches.\n\n# BUILDING #\n\n```\n$ dpkg-buildpackage -b\n$ sudo dpkg -i ../yandex-porto_*.deb\n```\nor\n```\n$ sudo apt-get install g++ cmake protobuf-compiler libprotobuf-dev libnl-3-dev libnl-route-3-dev libnl-idiag-3-dev libncurses5-dev pandoc\n$ cmake .\n$ make\n$ make install DESTDIR=/usr/local\n```\n\n# RUNNING #\n\n```\n$ sudo groupadd porto\n$ sudo sudo adduser $USER porto\n$ sudo portod start\n$ portoctl exec hello command='echo \"Hello, world!\"'\n```\n\n# DOCUMENTATION #\n* [Porto manpage](porto.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyandex%2Fporto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyandex%2Fporto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyandex%2Fporto/lists"}