{"id":13394000,"url":"https://github.com/tsuru/tsuru","last_synced_at":"2025-05-13T16:03:30.597Z","repository":{"id":2642225,"uuid":"3631697","full_name":"tsuru/tsuru","owner":"tsuru","description":"Open source and extensible Platform as a Service (PaaS).","archived":false,"fork":false,"pushed_at":"2025-04-16T23:23:05.000Z","size":74027,"stargazers_count":5102,"open_issues_count":15,"forks_count":542,"subscribers_count":197,"default_branch":"main","last_synced_at":"2025-04-22T11:36:13.933Z","etag":null,"topics":["containers","devops","docker","go","hacktoberfest","kubernetes","paas"],"latest_commit_sha":null,"homepage":"https://tsuru.io","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tsuru.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"docs/roadmap.rst","authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-03-05T21:41:08.000Z","updated_at":"2025-04-22T04:40:50.000Z","dependencies_parsed_at":"2023-07-13T13:07:45.882Z","dependency_job_id":"aeab3980-efa4-4925-ac57-21a6709f6656","html_url":"https://github.com/tsuru/tsuru","commit_stats":{"total_commits":15016,"total_committers":157,"mean_commits":95.64331210191082,"dds":0.7281566329248801,"last_synced_commit":"47649f3c1450a3e4e2a6ae890c6a86732d34f5a4"},"previous_names":["globocom/tsuru"],"tags_count":294,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsuru%2Ftsuru","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsuru%2Ftsuru/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsuru%2Ftsuru/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsuru%2Ftsuru/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tsuru","download_url":"https://codeload.github.com/tsuru/tsuru/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252590509,"owners_count":21772934,"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":["containers","devops","docker","go","hacktoberfest","kubernetes","paas"],"created_at":"2024-07-30T17:01:05.170Z","updated_at":"2025-05-05T22:46:52.956Z","avatar_url":"https://github.com/tsuru.png","language":"Go","readme":"# tsuru\n\n[![Build Status](https://github.com/tsuru/tsuru/workflows/ci/badge.svg?branch=main)](https://github.com/tsuru/tsuru/actions)\n[![Go Report Card](https://goreportcard.com/badge/github.com/tsuru/tsuru)](https://goreportcard.com/report/github.com/tsuru/tsuru)\n\n## What is tsuru?\n\ntsuru is an extensible and open source Platform as a Service (PaaS) that makes application deployments faster and easier.\nWith tsuru, you don’t need to think about servers at all. As an application developer, you can:\n- Write apps in the programming language of your choice\n- Back apps with add-on resources such as SQL and NoSQL databases, including memcached, Redis, and many others\n- Manage apps using the `tsuru` command-line tool\n\nLinks:\n\n- Landing page: https://tsuru.io\n- Full Documentation: https://docs.tsuru.io/main/\n- How to Contribute: https://docs.tsuru.io/stable/contributing/\n- Repository \u0026 Issue Tracker: https://github.com/tsuru/tsuru\n- Talk to us on Gitter: https://gitter.im/tsuru/tsuru\n\n\nPopular platforms supported:\n\n- [Python](https://github.com/tsuru/platforms/tree/master/python)\n- [Nodejs](https://github.com/tsuru/platforms/tree/master/nodejs)\n- [GO](https://github.com/tsuru/platforms/tree/master/go)\n- [Ruby](https://github.com/tsuru/platforms/tree/master/ruby)\n- [PHP](https://github.com/tsuru/platforms/tree/master/php)\n- [Perl](https://github.com/tsuru/platforms/tree/master/perl)\n- [Lua](https://github.com/tsuru/platforms/tree/master/lua)\n- [Java](https://github.com/tsuru/platforms/tree/master/java)\n\n## Quick Start\n\n### Getting tsuru-client\n\nDownload the latest release for your platform at: https://github.com/tsuru/tsuru-client/releases/\n\nExample for release `1.1.1` and `OS X`:\n\n```\n$ curl -sSL https://github.com/tsuru/tsuru-client/releases/download/1.1.1/tsuru-1.1.1-darwin_amd64.tar.gz | tar xz\n```\n\n### Install Guides\n\n* [Minikube](https://tsuru.github.io/docs/getting_started/install_minikube/)\n* [GKE - Google Kubernetes Engine](https://tsuru.github.io/docs/getting_started/install_gke/)\n\n\n\n### Testing\n\nIf everything's gone well you have the tsuru running in a Kubernetes Cluster.\nCall `app list` to see tsuru working, this command needs to return one app called tsuru-dashboard.\n\n```\n$ tsuru app list\n```\n\n## Local development\n\n### Dependencies\n\nBefore starting, make sure you have the following tools installed:\n\n* [docker](https://docs.docker.com/engine/install) (or [podman](https://podman.io/docs/installation))\n* [minikube](https://minikube.sigs.k8s.io/docs/start)\n* [go](https://go.dev/dl/)\n* [yq](https://github.com/mikefarah/yq#install)\n\nYou'll also need the [Tsuru Client](https://docs.tsuru.io/stable/using/install-client.html) to interact with the Tsuru API.\nIf you haven't installed it yet, please do so.\n\n**For macOS users**: We recommend using the **_qemu_** driver with **_socket_vmnet_** for Minikube clusters.\nFor more information on installing **_qemu_** and **_socket_vmnet_**, refer to the following links:\n\n* [qemu](https://www.qemu.org/download/)\n* [socket_vmnet](https://github.com/lima-vm/socket_vmnet)\n\n**Note**: If you are using Docker-compatible alternatives like Podman, be sure to specify the `DOCKER` variable with the\ncorrect binary when running make commands. For example: `make local.run DOCKER=podman`.\n\n### Running local environment\n\nTo run the Tsuru API locally, you'll need to first set up the local environment.\nThis setup process is crucial because it creates the default configuration files, initializes required dependencies, and prepares your local system to host the Tsuru API.\nThe following command will handle all these tasks:\n\n```bash\nmake local.setup\n```\n\nOnce the setup is complete, you won’t need to run this command again unless you want to reset your environment.\n\nAfter the initial setup, you can start the Tsuru API and its dependencies using the following command:\n\n```bash\nmake local.run\n```\n\nOnce the Tsuru API is running, open a new terminal window and configure your Tsuru CLI to point to the `local-dev` target.\nThis target tells the CLI to interact with your local Tsuru API instance rather than a remote server.\nYou can set the target using this command:\n\n```bash\ntsuru target-set local-dev\n```\n\nTsuru's targets function similarly to Kubernetes' `kubectl` config contexts, allowing you to switch between different environments easily.\n\nTo confirm that everything is set up correctly, you can log in and list the clusters managed by your Tsuru API instance:\n\n```bash\ntsuru login admin@admin.com # password: admin@123\ntsuru cluster list\n```\n\nIf everything is working as expected, you should see your local Minikube cluster listed as the default provisioner.\n\n### Cleaning up\n\nWhen you're done working with your local environment, it's important to stop the services to free up system resources.\nYou can stop the dependencies using:\n\n```bash\nmake local.stop\n```\n\nIf you want to fully reset your environment, or if you no longer need the Tsuru API and its dependencies on your local machine, you can remove all associated resources using:\n\n```bash\nmake local.cleanup\n```\n","funding_links":[],"categories":["Go","Container Operations","Repositories","go","PaaS","Uncategorized","Open Source Software","swarm","kubernetes","运维自动化","Virtualization","Go Tools","Infrastructure"],"sub_categories":["PaaS","Uncategorized","Containers","Other Software","Hostings"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsuru%2Ftsuru","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftsuru%2Ftsuru","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsuru%2Ftsuru/lists"}