Closed CPIJ closed 4 years ago
I'm fairly confident that the token issuer URL doesn't match the realm URL. Try using the following docker-compose.yml:
version: '3'
services:
keycloak:
image: jboss/keycloak:5.0.0
container_name: keycloak
environment:
KEYCLOAK_USER: admin
KEYCLOAK_PASSWORD: admin
KEYCLOAK_HOSTNAME: keycloak
ports:
- 8080:8080
app:
image: maven:3.6.0-alpine
container_name: app
command: java -agentlib:jdwp=transport=dt_socket,server=y,address=8888 -jar /usr/src/app/target/kumuluzee-security-cdi-keycloak-3.5.0-SNAPSHOT.jar
volumes:
- ./target:/usr/src/app/target
links:
- keycloak
ports:
- 8081:8080
- 8888:8888
depends_on:
- keycloak
You will have to add keycloak
mapping to your hosts file in order for you to access keycloak
outside docker.
Thanks but how do we handle this /etc/hosts file in production, we cannot get all users editing their host file to access an applixtion
@adebola in production, the usual setup is to deploy keycloak behind nginx reverse proxy and expose publicly with a domain name and SSL. The approach described above is just a quick fix for local development.
Thanks once more but my 401 issues are for keycloak installed behind a reverse proxy in a docker container, with SSL installed, I initially used http://keycloak:8080 for the other containers to reach keycloak, I can log-in but I cannot access any protected resource in any microservice, I later changed this to the fully qualified name of the server but on both occasions I always get a 401 when I try to access a protected resource, eventually I had to install keycloak standalone on a separate EC2 instance to proceed
Hi,
I'm following this guide to test KumuluzEE and Keycloak. When I run the
CustomerApplication
on my own machine everything is fine. But when I try to move it to a Docker container I keep getting401 Unauthorized
when trying to access/v1/customers
or any other endpoint.Here's my docker-compose file
And here's my kumuluz config.
As you see, I tried using
keycloak
as the hostname, sadly this did not work.When I ran this configuration I got the following exception:
org.keycloak.adapters.rotation.AdapterTokenVerifier -- Didn't find publicKey for kid: <kid>
. So, I added"realm-public-key": "<pubk>"
to the config.The error message is gone, but sadly I still get
401 Unauthorized
. I'm fairly new to Keycloak, so maybe I'm making a simple mistake.. either way, I hope you can provide some help :)Thanks!