This repo will primarily contain:
- Architectural and other documentation;
- Docker Compose file to set up and run Bürokratt's Chat Bot as a fully functional service;
- Clone Ruuter
- Navigate to Ruuter and build the image
docker build -t ruuter .
- Clone Resql
- Navigate to Resql and build the image
docker build -t resql .
- Clone Data Mapper
- Navigate to Data Mapper and build the image
docker build -t data-mapper .
- Clone TIM
- Navigate to TIM and build the image
docker build -t tim .
- Clone Chat Widget
- build chat widget image
docker build -f Dockerfile.dev -t chat-widget .
- Clone Authentication Layer
- build chat widget image
docker build -f Dockerfile.dev -t authentication-layer .
- Clone RASA
- choose dev branch and run
docker build -t rasa .
- Change
CHATBOT_BOT=http://bot:5005
in constants.ini - Navigate to current repo and run
docker-compose $(find docker-* | sed -e 's/^/-f /') up -d
-
Change
CHATBOT_BOT=http://171.22.247.37:5005
in constants.ini -
Navigate to current repo and run
docker-compose up -d
- For setting up the database initially, run
docker run --platform linux/amd64 --network=bykstack riaee/byk-users-db:liquibase20220615 --url=jdbc:postgresql://users_db:5432/byk --username=byk --password=01234 --changelog-file=./master.yml update
- Run migrations added in this repository by running the helper script
./migrate.sh
- When creating new migrations, use the helper
./create-migration.sh name-of-migration
which will create a timestamped file in the correct directory and add the required headers
- To be able to use endpoints, you must have a valid cookie generated by TIM so that TIM can validate it
- for example in test DB To create a valid TIM JWT, call cs-login and pass
{"login": "EE30303039914"}
and then copy the value of jwt response and added it as the value for the cookie namedcustomJwtCookie
- To Initialize Open Search run
./deploy-opensearch.sh <URL> <AUTH> <Is Mock Allowed - Default false>
- To Use Opensearch locally run
./deploy-opensearch.sh http://localhost:9200 admin:admin true
Currently, Header and Main Navigation used as external components, they are defined as dependency in package.json
"@buerokrat-ria/header": "^0.0.1"
"@buerokrat-ria/menu": "^0.0.1"
"@buerokrat-ria/styles": "^0.0.1"
- When running ruuter either on local or in an environment make sure to adjust
- application.internalRequests.allowedIPs=127.0.0.1,{YOUR_IPS}
under ruuter environments