Files
hawkbit/hawkbit-runtime/docker/README.md
Avgustin Marinov a6fa75697f Splitting monolith app to micro services (#1490)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2023-11-30 15:41:12 +02:00

1.9 KiB

hawkBit Docker

Setup

A: Docker Container

Start the hawkBit Update Server as a single container

$ 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 up -d

C: Docker Stack

Start the hawkBit Update Server and Device Simulator together with an MySQL and RabbitMQ instance as services within a swarm

$ docker swarm init
$ docker stack deploy -c docker-compose-deps-mysql.yml hawkbit

Access

Service / Container URL Login A B C
hawkBit Update Server http://localhost:8080/ admin:admin
hawkBit Device Simulator http://localhost:8083/ -
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-mysql"
    environment:
      SPRING_APPLICATION_JSON: '{
        "spring.datasource.url": "jdbc:mariadb://mysql:3306/hawkbit",
        "spring.rabbitmq.host": "rabbitmq",
        "spring.rabbitmq.username": "guest",
        "spring.rabbitmq.password": "guest",
        "spring.datasource.username": "root",
        "hawkbit.server.im.users[0].username": "hawkbit",
        "hawkbit.server.im.users[0].password": "{noop}isAwesome!",
        "hawkbit.server.im.users[0].firstname": "Eclipse",
        "hawkbit.server.im.users[0].lastname": "HawkBit",
        "hawkbit.server.im.users[0].permissions": "ALL"
      }'