Skip to content

we-kode/mml.identity

Repository files navigation

GitHub top language GitHub Release Date Docker Image Version (latest by date) GitHub Workflow Status GitHub

Identity

Identity is part of the My Media Lib project. This service is responsible for managing admins and clients.

Local Development

Setup your local development environment to run .NET and docker.

Clone this repository and configure it, like described in the following sections. Consider that this service does not run standalone. You have to setup the backend to run the My Media Lib project.

Appsettings

A template of the appsettings can be found at ./Identity.API/default.appsettings.json. Create a local copy and rename it how you like. Fill in the configuration. Check the official documentation on how to fill in the documentation.

Configure .env

Create a local copy of the .env file name e.g. dev.env and fill in the configuration. Check the official documentation on how to configure the .env file.

Local build the docker image

To build the docker image on your machine run

docker-compose --env-file dev.env up --build -d

Deployment

Releases

New releases will be available if new features or improvements exists. Check the corresponding release to learn what has changed. Binary releases are only available as docker images on docker hub.

Setup

Check the official documentation on how to setup the media service.

Create first admin user

The first admin user can be created by the command create by using the cli provided by the service. To call it in docker run

docker exec -it wekode.mml.identity /bin/bash
root@6712536aabd:/app# create

You will be ask for an username and a password. The password must be at least 12 characters long. If no admin app client exists already, a new one will be created and the client id will be printed on the console.

Create admin clients

Admin clients are backend services, which need to validate their requests by the identity service. They can be created, listed and removed by the command line provided by the service. To create one client call

docker exec -it wekode.mml.identity /bin/bash
root@6712536aabd:/app# admin-create

To list all admin clients call:

docker exec -it wekode.mml.identity /bin/bash
root@6712536aabd:/app# admin-list

And to remove one client call:

docker exec -it wekode.mml.identity /bin/bash
root@6712536aabd:/app# admin-remove <client id>

Contribution

Please check the official documentation on how to contribute.