2018-08-01 11:01:02 +02:00
---
title: Getting Started
weight: 20
---
## From Docker Image
2018-09-21 14:12:47 +02:00
### Overview
2018-08-01 11:01:02 +02:00
2024-11-21 12:45:42 +02:00
HawkBit Update Server default user has _ admin/admin _ as default credentials. See below how the user can be changed.
2021-10-28 16:24:42 +01:00
2023-12-04 15:15:54 +02:00
It supports two configurations:
2024-11-05 11:41:56 +02:00
2023-12-04 15:15:54 +02:00
* monolith - hawkbit-update-server
2024-01-19 12:11:19 +02:00
* micro-service - hawkbit-mgmt-server, hawkbit-ddi-server, hawkbit-dmf-server.
2018-09-21 14:12:47 +02:00
2025-06-13 13:19:35 +03:00
For more hawkBit Docker related info see [Docker run info ](https://github.com/eclipse-hawkbit/hawkbit/blob/master/docker/README.md ) and [Docker build info ](https://github.com/eclipse-hawkbit/hawkbit/blob/master/docker/build/README.md )
2023-12-04 15:15:54 +02:00
### A: Run hawkBit Update Server (Monolith) as Docker Container
2018-09-21 14:12:47 +02:00
Start the hawkBit Update Server as a single container
```bash
$ docker run -p 8080:8080 hawkbit/hawkbit-update-server:latest
2018-08-01 11:01:02 +02:00
```
2024-11-21 13:36:14 +02:00
This will start hawkBit update server with embedded H2 database for evaluation purposes.
2018-08-01 11:01:02 +02:00
2023-12-04 15:15:54 +02:00
### B: Run hawkBit Update Server (Monolith) with services as Docker Compose
2024-11-21 13:36:14 +02:00
Start the hawkBit Update Server together with an PostgreSQL and RabbitMQ instance as containers
2018-09-21 14:12:47 +02:00
```bash
2024-10-04 10:21:03 +03:00
$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
2024-11-21 13:36:14 +02:00
$ cd hawkbit/docker
$ docker-compose -f docker-compose-monolith-postgres.yml up -d
```
or with MySQL
```bash
$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
2023-12-04 15:15:54 +02:00
$ docker-compose -f docker-compose-monolith-mysql.yml up -d
2018-08-01 11:01:02 +02:00
```
2018-09-21 14:12:47 +02:00
2024-11-21 13:36:14 +02:00
If you want to start also the Simple UI, you can use, for PostgreSQL:
```bash
$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-monolith-with-simple-ui-postgres.yml up -d
```
or with MySQL
```bash
$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
2025-03-10 08:51:06 +02:00
$ docker-compose -f docker-compose-monolith-with-simple-ui-mysql.yml up -d
2024-11-21 13:36:14 +02:00
```
Note: _ -d _ flag is used to run the containers in detached mode. If you want to see the logs, you can remove the flag.
2023-12-04 15:15:54 +02:00
### C: Run hawkBit Update Server (Micro-Service) with services as Docker Compose
2024-11-21 13:36:14 +02:00
Start the hawkBit Update Server together with an PostgreSQL and RabbitMQ instance as containers
2018-09-21 14:12:47 +02:00
2024-11-21 13:36:14 +02:00
```bash
$ 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
```bash
$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-micro-services-mysql.yml up -d
```
2018-09-21 14:12:47 +02:00
2024-11-21 13:36:14 +02:00
If you want to start also the Simple UI, you can use, for PostgreSQL:
```bash
$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
$ cd hawkbit/docker
$ docker-compose -f docker-compose-micro-services-with-simple-ui-postgres.yml up -d
```
or with MySQL
2018-09-21 14:12:47 +02:00
```bash
2024-10-04 10:21:03 +03:00
$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
2024-11-21 13:36:14 +02:00
$ cd hawkbit/docker
2025-03-10 08:51:06 +02:00
$ docker-compose -f docker-compose-micro-services-with-simple-ui-mysql.yml up -d
2018-09-21 14:12:47 +02:00
```
2018-08-01 11:01:02 +02:00
2024-11-21 13:36:14 +02:00
Note: _ -d _ flag is used to run the containers in detached mode. If you want to see the logs, you can remove the flag.
2018-08-01 11:01:02 +02:00
## From Sources
2018-08-23 13:29:08 +02:00
### 1: Clone and build hawkBit
2024-11-05 11:41:56 +02:00
2018-08-01 11:01:02 +02:00
```sh
2024-10-04 10:21:03 +03:00
$ git clone https://github.com/eclipse-hawkbit/hawkbit.git
2018-08-01 11:01:02 +02:00
$ cd hawkbit
2024-11-21 12:45:42 +02:00
$ mvn clean install -DskipTests
2018-08-01 11:01:02 +02:00
```
2024-11-27 08:14:52 +02:00
### 2: Start hawkBit [update server](https://github.com/eclipse-hawkbit/hawkbit/tree/master/hawkbit-monolith/hawkbit-update-server) (Monolith)
2018-08-01 11:01:02 +02:00
```sh
2024-11-21 12:45:42 +02:00
$ java -jar ./hawkbit-monolith/hawkbit-update-server/target/hawkbit-update-server-0-SNAPSHOT.jar
2018-08-01 11:01:02 +02:00
```
2024-11-21 13:36:14 +02:00
Note: you could start it also in microservices mode by:
```sh
$ java -jar ./hawkbit-mgmt/hawkbit-mgmt-server/target/hawkbit-mgmt-server-0-SNAPSHOT.jar
```
```sh
$ java -jar ./hawkbit-ddi/hawkbit-ddi-server/target/hawkbit-ddi-server-0-SNAPSHOT.jar
```
and (only if you want to use the DMF feature):
```sh
$ java -jar ./hawkbit-dmf/hawkbit-dmf-server/target/hawkbit-dmf-server-0-SNAPSHOT.jar
```
2025-06-13 13:19:35 +03:00
Note: you could start the Simple UI by:
2024-11-21 13:36:14 +02:00
```sh
$ java -jar ./hawkbit-simple-ui/target/hawkbit-simple-ui-0-SNAPSHOT.jar
```
## Configuration
### Change credentials
2024-11-21 12:45:42 +02:00
As stated before the default user is _ admin/admin _ . It could be overridden by changing the [TenantAwareUserProperties ](https://github.com/eclipse-hawkbit/hawkbit/blob/master/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/TenantAwareUserProperties.java ) configuration using Spring ways. For instance, using a properties file like:
```properties
# 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
2018-08-01 11:01:02 +02:00
```
2024-11-21 12:45:42 +02:00
which should remove the default _ admin/admin _ user and add a hawkbit user _ hawkbit _ with password _ isAwesome! _ and a role _TENANT_ADMIN_.
2018-08-01 11:01:02 +02:00
2025-06-13 13:19:35 +03:00
You could create multiple users with specified roles.
For details how to configure docker compose based setup see the [Docker run info ](https://github.com/eclipse-hawkbit/hawkbit/blob/master/docker/README.md ) -> Configuration