Sign inSign up

fastybird/auth-node

By fastybird

•Updated almost 6 years ago

FastyBird IOT server Accounts node for user storage & basic logic service

Image
0

773

fastybird/auth-node repository overview

⁠FastyBird auth node

Build Status Code coverage PHP Licence Downloads total Latest stable PHPStan

⁠What is FastyBird auth node?

Auth node is a microservice for managing application accounts & sessions.

FastyBird auth node is an Apache2 licensed⁠ distributed authentication microservice, developed in PHP with Nette framework⁠.

⁠Requirements

FastyBird auth node is tested against PHP 7.4 and ReactPHP http⁠ 0.8 event-driven, streaming plaintext HTTP server and RabbitMQ⁠ 3.7 message broker

⁠Getting started

NOTE: If you don't want to install it manually, try docker image⁠

The best way to install fastybird/auth-node is using Composer⁠. If you don't have Composer yet, download it⁠ following the instructions. Then use command:

$ composer create-project --no-dev fastybird/auth-node path/to/install
$ cd path/to/install

Everything required will be then installed in the provided folder path/to/install

This microservice has several console command.

⁠HTTP server
$ vendor/bin/fb-console fb:web-server:start

This command is to start build-in web server which is listening for incoming http api request messages from clients and is listening for new data from exchange bus from other microservices.

⁠Install with docker

Docker Image Version (latest by date) Docker Image Size (latest by date) Docker Cloud Build Status

Docker image: fastybird/auth-node⁠

⁠Use docker hub image
$ docker run -d -it --name auth fastybird/auth-node:latest
⁠Generate local image
$ docker build --tag=auth-node .
$ docker run -d -it --name auth-node auth-node

⁠Configuration

This microservice is preconfigured for default connections, but your infrastructure could be different.

Configuration could be made via environment variables:

Environment VariableDescription
FB_APP_PARAMETER__EXCHANGE_HOST=127.0.0.1RabbitMQ host address
FB_APP_PARAMETER__EXCHANGE_PORT=5672RabbitMQ access port
FB_APP_PARAMETER__EXCHANGE_VHOST=/RabbitMQ vhost
FB_APP_PARAMETER__EXCHANGE_USERNAME=guestUsername
FB_APP_PARAMETER__EXCHANGE_PASSWORD=guestPassword
FB_APP_PARAMETER__DATABASE_VERSION=5.7MySQL server version
FB_APP_PARAMETER__DATABASE_HOST=127.0.0.1MySQL host address
FB_APP_PARAMETER__DATABASE_PORT=3306MySQL access port
FB_APP_PARAMETER__DATABASE_DBNAME=auth_nodeMySQL database name
FB_APP_PARAMETER__DATABASE_USERNAME=rootUsername
FB_APP_PARAMETER__DATABASE_PASSWORD=Password
FB_APP_PARAMETER__SERVER_ADDRESS=0.0.0.0HTTP server host address
FB_APP_PARAMETER__SERVER_PORT=8000HTTP server access port
FB_APP_PARAMETER__SECURITY_SIGNATURE=Security token signature string

NOTE: In case you are not using docker image or you are not able to configure environment variables, you could edit configuration file ./config/default.neon

⁠Initialization

This microservice is using database, and need some initial data to be inserted into it. This could be done via shell command:

$ vendor/bin/fb-console fb:initialize

This console command is interactive and will ask for all required information.

After this steps, microservice could be started with server command⁠

⁠Feedback

Use the issue tracker⁠ for bugs or mail⁠ or Tweet⁠ us for any idea that can improve the project.

Thank you for testing, reporting and contributing.

⁠Changelog

For release info check release page⁠

⁠Maintainers


Homepage https://www.fastybird.com⁠ and repository https://github.com/fastybird/auth-node⁠.

Tag summary

Content type

Image

Digest

Size

195.6 MB

Last updated

almost 6 years ago

docker pull fastybird/auth-node