- Gin as web framework
- JWT for authentication and authorization
- Redis for caching
- Elasticsearch for logging database
- Beat for log shipping
- Kibana as log viewer
- Postgresql as main database engine
- PgAdmin as database management tool
- Prometheus for metric database
- Grafana for metric dashboards
- Validator for endpoint input Validation
- Viper for configurations
- Zap for logging
- Zerolog for logging
- Gorm as ORM
- Swagger for documentation
- Docker compose for run project with all dependencies in docker
docker compose -f "docker/docker-compose.yml" up -d --build
Run local manually http://localhost:5005
Run in docker http://localhost:9001
GetTokenUrl: http://localhost:5005/api/v1/users/login-by-username Username: admin Password: 12345678
Username: elastic Password: changeme
Username: admin Password: foobar
Username: h.naimaei@gmail.com Password: 123456
Postgres Server info:
Host: postgres_container Port: 5432 Username: postgres Password: admin
docker compose --file 'docker/docker-compose.yml' --project-name 'docker' down