• Stars
    star
    553
  • Rank 80,462 (Top 2 %)
  • Language
    Go
  • License
    Other
  • Created about 13 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Open source tool to deploy apps to Kubernetes clusters

Teresa

Release Software License Build Status codecov Go Report Card

Teresa is an extremely simple platform as a service that runs on top of Kubernetes. It 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.

Client Installation

Download (recommended)

This is the best way to get the latest release.

  • Access https://github.com/luizalabs/teresa/releases
  • Download the latest release for your OS. Eg: teresa-linux-amd64
  • Rename the download file to teresa. Eg: mv teresa-linux-amd64 teresa
  • Make it an executable. Eg: chmod +x teresa
  • Move it to the bin folder. Eg: sudo mv teresa /usr/bin

Then you're good to go 🙂 ! teresa should now be available to use on your terminal.

Homebrew

Run the following in your command-line:

$ brew tap luizalabs/teresa-cli
$ brew install teresa

Snap

Run the following in your command-line:

$ sudo snap install teresa-cli

Server Installation

Server requirements:

  • Kubernetes cluster (>= 1.9)

  • database backend to store users and teams (SQLite or MySQL)

  • storage for build artifacts (AWS S3 or minio)

  • rsa keys for token signing

  • (optional) TLS encryption key and certificate

The recommended installation method uses the helm package manager, for instance to install using S3 and MySQL (recommended):

$ openssl genrsa -out teresa.rsa
$ export TERESA_RSA_PRIVATE=`base64 -w0 teresa.rsa`
$ openssl rsa -in teresa.rsa -pubout > teresa.rsa.pub
$ export TERESA_RSA_PUBLIC=`base64 -w0 teresa.rsa.pub`
$ helm repo add luizalabs http://helm.k8s.magazineluiza.com
$ helm install luizalabs/teresa \
    --namespace teresa \
    --set rsa.private=$TERESA_RSA_PRIVATE \
    --set rsa.public=$TERESA_RSA_PUBLIC \
    --set aws.key.access=xxxxxxxx \
    --set aws.key.secret=xxxxxxxx \
    --set aws.region=us-east-1 \
    --set aws.s3.bucket=teresa \
    --set db.name=teresa \
    --set db.hostname=dbhostname \
    --set db.username=teresa \
    --set db.password=xxxxxxxx \
    --set rbac.enabled=true

Look here for more information about helm options.

You need to create an admin user to perform user and team management:

$ export POD_NAME=$(kubectl get pods -n teresa -l "app=teresa" -o jsonpath="{.items[0].metadata.name}")
$ kubectl exec $POD_NAME -it -n teresa -- ./teresa-server create-super-user --email [email protected] --password xxxxxxxx

QuickStart

Read the first sections of the FAQ.

More Repositories

1

tutorial-python-brasil

Construindo API's robustas utilizando Python
Python
329
star
2

dev-guide

Guias e boas práticas de programação para um melhor desenvolvimento de software
Shell
326
star
3

shared-memory-dict

A very simple shared memory dict implementation
Python
152
star
4

lasier

A sync/async circuit breaker implementation in Python
Python
90
star
5

juggernaut

An unstoppable boilerplate
JavaScript
57
star
6

ramos

Generic backend pool
Python
29
star
7

gandalf-lint

Bad Code Shall Not Pass
JavaScript
27
star
8

dev.magalu.com-docs

Conteúdo do portal Magalu para Desenvolvedores, incluindo especificações da plataforma aberta Magalu
20
star
9

cookiecutter-aiohttp-api

Python
20
star
10

mitose

Go
18
star
11

django-toolkit

Python
18
star
12

hub

Luizalabs' product/people management app
Python
13
star
13

DistributedCircuitBreaker.NET

C#
10
star
14

hello-teresa

Hello world apps ready to be deployed on Kubernetes clusters through Teresa
Java
10
star
15

heimdall

Python
8
star
16

react-boilerplate

React boilerplate
JavaScript
7
star
17

juggernaut-demo

Demonstração de utilização de componentes utilizando o template juggernaut.
JavaScript
7
star
18

tornado-cookiecutter

This repository is no longer maintained :(
JavaScript
6
star
19

moo-cli

A MOOvelous CLI
TypeScript
5
star
20

helm-rke2-o7k

Helm charts for RKE2
Smarty
5
star
21

asyncio-toolkit

Python
5
star
22

id-magalu-cli

CLI para operações relacionadas aos resources do ID Magalu
5
star
23

covid-19

5
star
24

homebrew-teresa-cli

Ruby
4
star
25

request-manager

Python
4
star
26

sindico

A executable that integrates useful kubernetes controllers
Go
4
star
27

gandalf-lint-react

React Bad Code Shall Not Pass
JavaScript
4
star
28

ansible-sentry

Nginx
3
star
29

mangos

Python
3
star
30

peladeiros

Python
3
star
31

dev.magalu.com

Magalu para Desenvolvedores: Experiência, APIs e Exemplos
3
star
32

MultiLineUIPageControl

UIPageControl with multiple lines! \o/
Objective-C
3
star
33

rey

Go
2
star
34

slugstore

Shell
2
star
35

sqs_logger

Python
1
star
36

nginx-lua

armazenar o Dockerfile da imagem de nginx
Lua
1
star
37

luizalabs.github.io

Blog
CSS
1
star
38

stewie-goiaba

Java
1
star
39

object-matchbox

Java
1
star