Hey @valiu!
I have tried to reproduce your issue but was not successful. On my machine everything is running perfectly fine. Maybe you should make sure that you do not have any other docker containers up and running. I would especially look out for any other Postgres container.
When I run into issues with Docker Desktop I always try to remove as many preexisting containers as possible to make sure everything is cleaned up.
If this does not work you could maybe try and run the core docker-compose file which does not include IAM and Security.
Let me know if this works out for you!
Best,
Thomas
Puh… That’s an interesting behaviour. I am running on the exact same versions of Docker and MacOS and do have an Intel CPU as well.
I guess you have already tried out to remove everything (all containers, images, volumes) and retry the docker-compose up command?
If this does not work maybe try to install it via KIND Kubernetes and Helm on your local machine?
Indeed I removed everything (containers, images, volumes) but still don’t start the keycloak container.
As for KIND Kubernetes and Helm, I find more difficult to install locally than docker-compose.
Thanks @valiu for sharing your solution!
It is weird that it works with a H2 database but not with PostgreSQL on your machine. At least you have figured out a workaround - that’s great!
I had the same problem for keycloak. The root cause of the issue is due to the network you are using.I found this issue when I sit in the public coffee shop) , keycloak failed to start. As soon as I switch to my cell phone as a hotspot, it works perfectly.
After a bit digging, keycloak use “getent…” to find the possible DBs on the network. You can run “getent hosts postgres”. For the public network, mine shows “52.26.148.183 app.nyansa.compostgres.nyansa.com” which I have no idea what they are. When I switch to my hotspot, it is nothing returned.
And you are right, if you add the DB_Vendor , that will bypass the getent logic in the start script in keycloak container.
My optimize container seems always work. No idea why yours failed. Well, a simple way maybe just change to a simple network.