- Configure the local development environment
make setup
- Start Docker
Build containers
make build
# Or a specific container
make build container=[frontend|server|database|dbadmin|grafana|loki|prometheus]
Run containers
make run
# Or a specific container
make run container=[frontend|server|database|dbadmin|grafana|loki|prometheus]
Restart containers
make restart
# Or a specific container
make restart container=[frontend|server|database|dbadmin|grafana|loki|prometheus]
Describe containers
make describe
Login to a container
make login container=[frontend|server|database|dbadmin|grafana|loki|prometheus]
Cleanup everything (containers, images, volumes)
make clean
Open web interfaces on browser:
make open target=[frontend|server|server_swagger|database|dbadmin|grafana|loki|prometheus]
Build yawa-ops (the server must be running to update the OpenAPI spec used by the Python client)
make build_ops
Build OpenAPI spec
make build_openapi
The application is made of the containers below.
Name | Url | Documentation |
---|---|---|
frontend | https://localhost:8010 | README |
server | https://localhost:8002 | README |
database | https://localhost:3307 | README |
dbadmin | https://localhost:8003 | README |
grafana | http://localhost:8005 | README |
prometheus | http://localhost:8004 | README |
Trust the certification authority used for development:
- Open Keychain
- Open System Keychain
- File > Import Items: select the PEM file of the CA chain (ca-chain.cert.pem)
- Select the root CA: GMARCIANI Root CA > Get Info > Trust > Select Always Trust
Restart the browser to make the change take effect.
Trust the certification authority in Postman:
- Open Postman
- Postman > Settings > Certificates
- Enable CA certificates
- Select the PEM file of the CA chain (ca-chain.cert.pem)
# Show server certificate
openssl s_client -showcerts -connect localhost:8010
# Validate the certificate with the CA bundle
openssl verify -verbose \
-CAfile resources/certificates/ca-chain.cert.pem \
resources/certificates/yawa.cert.pem