-
-
Notifications
You must be signed in to change notification settings - Fork 661
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve the docker-compose environment #461
Conversation
This is required to run the docker-compose environments on a SELinux-enabled environment such as Fedora 32. Note that ':z' (shared) is only used for the app directory itself. while ':Z' (private) is used for all other volume mounts.
This aligns this compose file with the main docker-compose.yml, and brings the Kafka connect container closer to actually starting up.
There is nothing here or anywhere that ensures this IP actually exists, and at least with using podman on Fedora this breaks accessing any of the containers.
This is new in zookeeper 3.5 (which is used by the newer confluentinc images), and the default port 8080 conflicts with akhq, preventing that from starting up.
…pose YAML files YAML is sometimes misleading, and especially in environment variables this can be problematic: These MUST be strings, and numbers such as `0` would actually get interpreted as empty strings. By using single quotes everywhere this should be less likely to happen accidentally when modifying these files ... as long as one sticks to the "keep the existing style rule" :)
This should make stopping and starting a docker-compose environment possible without losing all data in it.
…using the `ACLs` tab
The special for my knowledge: |
Hmm. In that case I would actually propose to drop that completely. For development I suspect it should be easy enough to just run the two parts separately in your IDE (JVM backend + webpack dev server), and just providing a basic docker-compose setup for zookeeper + kafka should then be enough.
Fair enough, could do that and add it to the documentation. I mainly don't like spending time working out why the documentation for development setup won't work when I come back to a project after a while -- I want to get to doing stuff! :)
This is telling docker how it should handle SELinux labels on the directories. 'z' means "allow this directory be shared by multiple containers if needed", while 'Z' means "only allow this one container to access it". If SELinux isn't enabled then these flags won't do anything. From docker-run(1):
|
Thanks for all the detailed clarification, I don't have such knowledge on Docker (SELinux is a word I that I don't take time to look at). |
@tchiotludo Could you please point out what you do to get AKHQ locally working for development purposes? When I start the project locally (per gradle task application/run or as IntelliJ IDEA build configuration of type Application on class
When I open the link for AKHQ, a blank/white screen is shown. The developer console output is as follows:
What am I doing wrong, what is missing? |
The better is to start:
After this the ui is working on |
Thank you @tchiotludo, this worked. I consider this a very valuable information. Don't you think it would be good to have this instructions noted in the development chapter of the README? |
Agree with that, @Grishnackh fell free to add a PR about that 👍 |
Bunch of fixes and improvements I needed to make the docker-compose environment work smoothly
Note-worthy: