{"id":13471618,"url":"https://github.com/luizalabs/teresa","last_synced_at":"2026-01-11T23:56:33.466Z","repository":{"id":1940410,"uuid":"2869673","full_name":"luizalabs/teresa","owner":"luizalabs","description":"Open source tool to deploy apps to Kubernetes clusters","archived":false,"fork":false,"pushed_at":"2023-02-25T02:14:13.000Z","size":35771,"stargazers_count":556,"open_issues_count":23,"forks_count":77,"subscribers_count":27,"default_branch":"master","last_synced_at":"2024-10-29T16:20:16.052Z","etag":null,"topics":["go","hacktoberfest","kubernetes","paas"],"latest_commit_sha":null,"homepage":"","language":"Go","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/luizalabs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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}},"created_at":"2011-11-28T19:44:45.000Z","updated_at":"2024-07-29T01:53:33.000Z","dependencies_parsed_at":"2023-07-08T16:16:39.903Z","dependency_job_id":null,"html_url":"https://github.com/luizalabs/teresa","commit_stats":{"total_commits":974,"total_committers":29,"mean_commits":33.58620689655172,"dds":0.6211498973305956,"last_synced_commit":"bf83d92c97d27d1ea5b1876092eaaf1551b23874"},"previous_names":["luizalabs/teresa-api","luizalabs/tapi"],"tags_count":53,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luizalabs%2Fteresa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luizalabs%2Fteresa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luizalabs%2Fteresa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luizalabs%2Fteresa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/luizalabs","download_url":"https://codeload.github.com/luizalabs/teresa/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245662857,"owners_count":20652096,"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":["go","hacktoberfest","kubernetes","paas"],"created_at":"2024-07-31T16:00:47.365Z","updated_at":"2025-10-25T19:19:08.415Z","avatar_url":"https://github.com/luizalabs.png","language":"Go","funding_links":[],"categories":["Roadmap","Go","Uncategorized","Featured On"],"sub_categories":["[PaaS](#paas)","Uncategorized"],"readme":"# Teresa\n[![Release](https://img.shields.io/github/release/luizalabs/teresa.svg?style=flat-square)](https://github.com/luizalabs/teresa/releases/latest)\n[![Software License](https://img.shields.io/badge/license-apache-brightgreen.svg?style=flat-square)](/LICENSE.md)\n[![Build Status](https://img.shields.io/travis/luizalabs/teresa/master.svg?style=flat-square)](https://travis-ci.org/luizalabs/teresa)\n[![codecov](https://img.shields.io/codecov/c/github/luizalabs/teresa/master.svg?style=flat-square\")](https://codecov.io/gh/luizalabs/teresa)\n[![Go Report Card](https://goreportcard.com/badge/github.com/luizalabs/teresa?style=flat-square)](https://goreportcard.com/report/github.com/luizalabs/teresa)\n\nTeresa is an extremely simple platform as a service that runs on top of [Kubernetes](https://github.com/kubernetes/kubernetes).\nIt uses a client-server model: the client sends high level commands (create application, deploy, etc.) to the server, which translates them to the Kubernetes API.\n\n## Client Installation\n\n### Download (recommended)\n\nThis is the best way to get the latest release.\n\n- Access https://github.com/luizalabs/teresa/releases\n- Download the latest release for your OS. Eg: `teresa-linux-amd64`\n- Rename the download file to `teresa`. Eg: `mv teresa-linux-amd64 teresa`\n- Make it an executable. Eg: `chmod +x teresa`\n- Move it to the `bin` folder. Eg: `sudo mv teresa /usr/bin`\n\nThen you're good to go :slightly_smiling_face: ! `teresa` should now be available to use on your terminal.\n\n### Homebrew\n\nRun the following in your command-line:\n\n```sh\n$ brew tap luizalabs/teresa-cli\n$ brew install teresa\n```\n\n### Snap\n\nRun the following in your command-line:\n\n```sh\n$ sudo snap install teresa-cli\n```\n\n## Server Installation\n\nServer requirements:\n\n- Kubernetes cluster (\u003e= 1.9)\n\n- database backend to store users and teams (SQLite or MySQL)\n\n- storage for build artifacts (AWS S3 or minio)\n\n- rsa keys for token signing\n\n- (optional) TLS encryption key and certificate\n\nThe recommended installation method uses the [helm](https://github.com/kubernetes/helm) package manager,\nfor instance to install using S3 and MySQL (recommended):\n\n    $ openssl genrsa -out teresa.rsa\n    $ export TERESA_RSA_PRIVATE=`base64 -w0 teresa.rsa`\n    $ openssl rsa -in teresa.rsa -pubout \u003e teresa.rsa.pub\n    $ export TERESA_RSA_PUBLIC=`base64 -w0 teresa.rsa.pub`\n    $ helm repo add luizalabs http://helm.k8s.magazineluiza.com\n    $ helm install luizalabs/teresa \\\n        --namespace teresa \\\n        --set rsa.private=$TERESA_RSA_PRIVATE \\\n        --set rsa.public=$TERESA_RSA_PUBLIC \\\n        --set aws.key.access=xxxxxxxx \\\n        --set aws.key.secret=xxxxxxxx \\\n        --set aws.region=us-east-1 \\\n        --set aws.s3.bucket=teresa \\\n        --set db.name=teresa \\\n        --set db.hostname=dbhostname \\\n        --set db.username=teresa \\\n        --set db.password=xxxxxxxx \\\n        --set rbac.enabled=true\n\n\nLook [here](./helm/README.md) for more information about helm options.\n\nYou need to create an admin user to perform [user and team management](./FAQ.md#administration):\n\n    $ export POD_NAME=$(kubectl get pods -n teresa -l \"app=teresa\" -o jsonpath=\"{.items[0].metadata.name}\")\n    $ kubectl exec $POD_NAME -it -n teresa -- ./teresa-server create-super-user --email admin@email.com --password xxxxxxxx\n\n## QuickStart\n\nRead the first sections of the [FAQ](./FAQ.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fluizalabs%2Fteresa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fluizalabs%2Fteresa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fluizalabs%2Fteresa/lists"}