80 lines
2.9 KiB
Markdown
80 lines
2.9 KiB
Markdown
# R11-Klaus
|
|
Mockup service for middleware testing.
|
|
|
|
[](https://travis-ci.com/Szakalakamaka/Klaus)
|
|
|
|
Available scripts:
|
|
|
|
### Running the application on a local machine
|
|
For Intellij:
|
|
Plugins:
|
|
settings -> plugins -> install lombok plugin
|
|
settings -> annotation processors -> enable annotation processing
|
|
|
|
A connection to a Redis database is expected to run the application successfully. You need to download and run Redis DB on
|
|
your local machine with default values localhost 6379.
|
|
|
|
You can also run the application via Docker.
|
|
#### docker-compose up --build -d
|
|
|
|
However, you need either to run it with Spring Cloud Config application or override property value
|
|
from redis.host = localhost to redis.host = redis. Where value "redis" will be treated as a DB service address and used
|
|
for connection between docker images.
|
|
|
|
### Operations on Redis DB
|
|
|
|
Use Redis CLI or attach to Redis docker image in order to manually operate on DB.
|
|
|
|
#### docker exec -it mockedservices_redis-server redis-cli
|
|
Attach to redis server image and open a redis client.
|
|
|
|
Useful redis-cli commands:
|
|
###### KEYS *
|
|
Show all keys in the db.
|
|
###### TYPE key
|
|
Show key type.
|
|
###### LRANGE key start stop
|
|
Display elements from the list.
|
|
###### LLEN key
|
|
Display list length.
|
|
###### SMEMBERS key
|
|
Display elements from hashSet.
|
|
Logs can be found in lists with names logstash_yyyy-mm-dd.
|
|
|
|
### Deployment and building with docker and jenkins
|
|
For creating docker context (feature available from docker version 19.03):
|
|
|
|
docker context create DEV \
|
|
--description "context for DEV environment" \
|
|
--docker "host=ssh://jenkins@s5000xvn:22"
|
|
|
|
|
|
docker context create PROD \
|
|
--description "connection to PROD environment" \
|
|
--docker "host=ssh://jenkins@server361209.nazwa.pl:22"
|
|
|
|
docker context create PROD \
|
|
--description "context for PROD environment" \
|
|
--docker "host=ssh://jenkins@server361209:22"
|
|
|
|
#### docker-compose up -d --build
|
|
Builds and launches Redis service and the application. Performs unit testing on the code and run the application.
|
|
|
|
#### docker-compose --context DEV up --build -d
|
|
The same as above, but the application will be deployed on the server defined via docker context as DEV.
|
|
|
|
#### docker-compose --context PROD up --build -d
|
|
The same as above, but the application will be deployed on the server defined via docker context as PROD.
|
|
|
|
The application can be started on a local machine without environment support. However, for application supervising and
|
|
updating configuration on deployment spring cloud applications should be deployed before. In order:
|
|
- Spring Cloud Eureka
|
|
- Spring Cloud Configuration
|
|
- MockedServices
|
|
Once a docker image repository will be availabe, the proper deployment order should be under control by docker-compose script
|
|
which should check if the applications are present and if not deploy stable images of Spring Cloud applications from
|
|
docker image repo.
|
|
|
|
|
|
|