This project contains tools used to automate keycloak's deployment process.
folder | description |
---|---|
config-cli | tool to configure keycloak via json files |
Tool to configure keycloak via json files
The config files are based on the keycloak export files. You can use them to re-import your settings. But keep your files as small as possible. Remove all UUIDs and all stuff which is default set by keycloak.
moped.json is a full working example file you can consider. Other examples are located in the test resources.
keycloak-tools | Keycloak 4.4.0.Final | Keycloak 4.5.0.Final | Keycloak 4.6.0.Final | Keycloak 4.7.0.Final | Keycloak 4.8.3.Final | Keycloak 5.0.0 | Keycloak 6.0.1 |
---|---|---|---|---|---|---|---|
v0.4.0 | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ |
v0.4.0-2 | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ |
v0.4.1 | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ |
v0.4.2-1 | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ |
v0.4.3 | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ |
v0.5.0 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ |
v0.5.1 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ |
v0.6.2 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
master | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
✓
Supported✗
Not supported
$ mvn package
Start a local keycloak on port 8080:
$ docker-compose down --remove-orphans && docker-compose up keycloak
before performing following command:
$ java -jar ./config-cli/target/config-cli.jar --keycloak.url=http://localhost:8080 --keycloak.password=admin123 --import.file=./example-config/moped.json
$ docker run -e KEYCLOAK_URL=http://<your keycloak host>:8080 \
-e KEYCLOAK_ADMIN=<keycloak admin username> \
-e KEYCLOAK_ADMIN_PASSWORD=<keycloak admin password> \
-e WAIT_TIME_IN_SECONDS=120 \
-e IMPORT_FORCE=false \
-v <your config path>:/tmp/keycloak-config-cli/configs \
adorsys/keycloak-config-cli:latest \
config-cli
version: '3.1'
services:
keycloak:
image: jboss/keycloak:6.0.1
environment:
KEYCLOAK_USER: <keycloak admin username>
KEYCLOAK_PASSWORD: <keycloak admin password>
ports:
- "8080:8080"
networks:
- my_network
command:
- "-b"
- "0.0.0.0"
- "--debug"
keycloak_config:
image: adorsys/keycloak-config-cli:latest
depends_on:
- keycloak
links:
- keycloak
volumes:
- <your config path>:/tmp/keycloak-config-cli/configs
environment:
- KEYCLOAK_URL=http://<your keycloak host>:8080/auth
- KEYCLOAK_ADMIN=<keycloak admin username>
- KEYCLOAK_ADMIN_PASSWORD=<keycloak admin password>
- WAIT_TIME_IN_SECONDS=120
- IMPORT_FORCE=false
depends_on:
- keycloak
networks:
- my_network
command: config-cli
networks:
my_network:
$ mvn verify