Skip to content

Latest commit

 

History

History
106 lines (90 loc) · 2.13 KB

README.md

File metadata and controls

106 lines (90 loc) · 2.13 KB

Locksmith Identity server

This is a WIP & will be production ready in v1.0

Admin Console

Admin Console

Usages

To run locksmith locally, first run the docker-compose make cmd

make docker-compose

Now you can run locksmith

go run locksmith.go

Config

Create a yaml file called locksmith.yaml

To set default users & role types. The user.role must match the roles values.

version: 1
roles:
  - admin
  - teachers
  - students
users:
  - name: admin
    role: admin
    email: [email protected]
    password: admin
... etc.

Docker Image

Pull down locksmith from the Docker registry

docker pull bandnoticeboard/locksmith:v1.0.2

Or select a version here - bandnoticeboard/locksmith

Docker Compose

Example of running locksmith with Docker Compose. This example also include the required postgres database configuration.

  postgres_locksmith:
    image: "postgres:latest"
    ports:
      - "5431:5432"
    environment:
      - POSTGRES_USER=admin
      - POSTGRES_PASSWORD=admin
      - POSTGRES_DB=identity_db
    volumes:
      - ./db/identitydb_vol/:/var/lib/postgresql/data

  locksmith:
    image: "bandnoticeboard/locksmith:v1.0.2"
    ports:
      - "7001:7001"
    env_file:
      - ".env-dev"
    depends_on:
      - postgres_locksmith
    restart: on-failure

Environment Variables

  • TOKEN_SECRET
  • PGDATABASE
  • PGUSER
  • PGPASSWORD
  • PGPORT
  • PGHOST

Example .env file

TOKEN_SECRET=wizard
PGDATABASE=identity_db
PGUSER=admin
PGPASSWORD=admin
PGPORT=5431
PGHOST=host.docker.internal

Endpoints

  • GET http://127.0.0.1:7001/health Response:
{"Health":"OK"}

Authors

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT