Table of Contents
Highscore is a containerized python service for
- Storing scores of users
- Getting highest scores of a user
- Getting highest overall scores
- Getting all scores
The service offers a REST interface and stores the data in DynamoDB.
GitHub Actions are used to push the container to
Docker Hub.
- Local development
- Python
- FastApi
- Local DynamoDB Container
- Docker
- Docker Compose
- Cloud
- Terraform Cloud
- AWS EKS
- Kubernetes
- Test
- Postman
- CI/CD
- GitHub Actions
- CodeQL
- Sonar
- Dependabot
- Docker Hub
Docker compose can build and run every container locally. You can make a health check with curl.
docker compose up -d --build
curl --location --request GET 'http://127.0.0.1:5000/health'- Scores are sorted lexically (Actually very critical 🙈)
-
Create complete AWS environment with terraform cloud
- IAM / Security groups
- Use Terraform output for configuration
-
Deploy to EKS
-
Remove Dynamodb-container from EKS deployment
-
Unit tests
-
Run Postman in GitHub Action with Newman
-
Fill generated OpenApi with description and default values
-
Authentication
-
Opensource Licenses
-
Snyk scan for container security
-
Add GitHub security policy
-
Maybe
- Add volumes to K8s dynamodb
- Monitoring
- Observability
- Deploy as a Function
The code distributed under the MIT license. See LICENSE for more information.
Get in touch: contact@pluvial.dev