* feat[Simple-UI]: add action status list * fix[Simple-UI]: various ui issues * chore: add devtool * feat[Simple-UI: add DS metadata * feat[Simple-UI]: add sort in DS view * feat[Simple-UI]: add created at to DS view * style[Simple-UI]: remove id from DS view * feat[Simple-UI]: add rsql filter & url filter * feat[Simple-UI]: if one ds in result show details * feat[Simple-UI]: add filter from url to targetview * feat[Simple-UI]: add link from target details view to DS * feat[Simple-UI]: add sort & version on target view * refacto[Simple-UI]: linkted text area * feat[Simple-UI]: dynamic homepage depending on permissions * feat[Simple-UI]: sort by newest version * feat[Simple-UI]: add target address * feat[Simple-UI]: sort by last modified target * fix[Simple-UI]: securityToken null if no permission * fix[Simple-UI]: green circle on bad update * feat[Simple-UI]: use local date format * docs: update user config * fix: tag filter * feat[Simple-UI]: search on multiple attributes * refacto: rename TargetActions -> TargetActionsHistory * refacto: move TargetActionsHistory to a new file
hawkBit Docker
Setup
A: Docker Container
Start the hawkBit Update Server as a single container (requires Docker to be installed and all dependencies to be available)
$ docker run -d -p 8080:8080 hawkbit/hawkbit-update-server:latest
B: Docker Compose
Start the hawkBit Update Server together with an MySQL and RabbitMQ instance as containers (Requires Docker Compose to be installed)
$ docker compose -f mysql/docker-compose-monolith-mysql.yml up
You could, also start it in different flavours, with UI or in microservices mode.
Note: Whit the upper command CTRL+C shuts down all services. Add '-d' at the end to start all into detached mode:
$ docker compose -f mysql/docker-compose-monolith-mysql.yml up -d
Then stop all services with:
$ docker compose -f mysql/docker-compose-monolith-mysql.yml down
Access
| Service / Container | URL | Login | A | B | C |
|---|---|---|---|---|---|
| hawkBit Update Server | http://localhost:8080/ | admin:admin | ✓ | ✓ | ✓ |
| MySQL | localhost:3306/hawkbit | root | ✓ | ✓ | |
| RabbitMQ | http://localhost:15672 | guest:guest | ✓ | ✓ |
Configuration
You can override application.properties by setting an environment variable SPRING_APPLICATION_JSON for hawkbit container.
hawkbit:
image: "hawkbit/hawkbit-update-server:latest"
environment:
SPRING_APPLICATION_JSON: '{
"spring.datasource.url": "jdbc:mariadb://mysql:3306/hawkbit",
"spring.rabbitmq.host": "rabbitmq",
"spring.rabbitmq.username": "guest",
"spring.rabbitmq.password": "guest",
# should remove default admin/admin user
"hawkbit.security.user.admin.tenant": "#{null}",
"hawkbit.security.user.admin.password": "#{null}",
"hawkbit.security.user.admin.roles": "#{null}",
# should add hawkbit/isAwesome! user
"hawkbit.security.user.hawkbit.tenant": "DEFAULT",
"hawkbit.security.user.hawkbit.password": "{noop}isAwesome!",
"hawkbit.security.user.hawkbit.roles": "TENANT_ADMIN"
}'