Files
hawkbit/docs/quick-start.md
2026-02-09 08:52:33 +02:00

5.2 KiB
Raw Blame History

Quick Start


From Docker Image

Overview

HawkBit Update Server default user has admin/admin as default credentials.
See below how the user can be changed.

It supports two configurations:

  • monolith hawkbit-update-server
  • micro-service hawkbit-mgmt-server, hawkbit-ddi-server, hawkbit-dmf-server

A: Run hawkBit Update Server (Monolith) as Docker Container

Start the hawkBit Update Server as a single container:

$ docker run -p 8080:8080 hawkbit/hawkbit-update-server:latest

This will start hawkBit update server with an embedded H2 database for evaluation purposes.


B: Run hawkBit Update Server (Monolith) with services as Docker Compose

Start the hawkBit Update Server together with a PostgreSQL and RabbitMQ instance as containers:

$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-monolith-postgres.yml up -d

or with MySQL:

$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-monolith-mysql.yml up -d

If you want to start also the hawkBit UI, you can use, for PostgreSQL:

$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-monolith-with-ui-postgres.yml up -d

or with MySQL:

$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-monolith-with-ui-mysql.yml up -d

Note: -d flag is used to run the containers in detached mode.
If you want to see the logs, you can remove the flag.


C: Run hawkBit Update Server (Micro-Service) with services as Docker Compose

Start the hawkBit Update Server together with a PostgreSQL and RabbitMQ instance as containers:

$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-micro-services-postgres.yml up -d

or with MySQL:

$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-micro-services-mysql.yml up -d

If you want to start also the hawkBit UI, you can use, for PostgreSQL:

$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-micro-services-with-ui-postgres.yml up -d

or with MySQL:

$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-micro-services-with-ui-mysql.yml up -d

Note: -d flag is used to run the containers in detached mode.
If you want to see the logs, you can remove the flag.


From Sources

1: Clone and build hawkBit

$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit
$ mvn clean install -DskipTests

2: Start hawkBit   Update Server (Monolith)

$ java -jar ./hawkbit-monolith/hawkbit-update-server/target/hawkbit-update-server-0-SNAPSHOT.jar

Note: you could start it also in microservices mode by:

$ java -jar ./hawkbit-mgmt/hawkbit-mgmt-server/target/hawkbit-mgmt-server-0-SNAPSHOT.jar
$ java -jar ./hawkbit-ddi/hawkbit-ddi-server/target/hawkbit-ddi-server-0-SNAPSHOT.jar
$ java -jar ./hawkbit-dmf/hawkbit-dmf-server/target/hawkbit-dmf-server-0-SNAPSHOT.jar

And (only if you want to use the DMF feature):

$ java -jar ./hawkbit-monolith/hawkbit-update-server/target/hawkbit-update-server-0-SNAPSHOT.jar

Note: You could also start with H2 console enabled with:

$java -jar ./hawkbit-monolith/hawkbit-update-server/target/hawkbit-update-server-0-SNAPSHOT.jar --spring.h2.console.enabled=true --spring.h2.console.path=/h2-console

for monolith, and:

$java -jar ./hawkbit-mgmt/hawkbit-mgmt-server/target/hawkbit-mgmt-server-0-SNAPSHOT.jar --spring.h2.console.enabled=true --spring.h2.console.path=/h2-console

for mgmt server in micro-service mode.

Then you will get H2 console available at '/h2-console' (Database available at 'jdbc:h2:mem:hawkbit')

You could also start the hawkBit UI by:

$ java -jar ./hawkbit-ui/target/hawkbit-ui-0-SNAPSHOT.jar

Configuration

Change credentials

As stated before, the default user is admin/admin.
It can be overridden by changing the TenantAwareUserProperties configuration using Spring.

For instance, using a properties file like:

# should remove the admin/admin user
hawkbit.security.user.admin.tenant=#{null}
hawkbit.security.user.admin.password=#{null}
hawkbit.security.user.admin.roles=#{null}

# should add a hawkbit/isAwesome! user
hawkbit.security.user.hawkbit.tenant=DEFAULT
hawkbit.security.user.hawkbit.password={noop}isAwesome!
hawkbit.security.user.hawkbit.roles=TENANT_ADMIN

This will remove the default admin/admin user and add a user hawkbit with password isAwesome! and role TENANT_ADMIN.

You can create multiple users with specified roles.