-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Add support for Unix Domain Sockets in Pomerium Reverse Proxy #7772
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
Add support for Unix Domain Sockets in Pomerium Reverse Proxy #7772
Conversation
@biru-codeastromer Are you sure the communication goes through unix sockets and not the 8080 TCP port? I'd expect unix:///run/jenkins/jenkins.socket to come up in the config instead of http://jenkins:8080, but I have no experience with Pomerium. @cmo-pomerium could you please review this? |
Thank you for your observation, @zbynek Sir! I initially configured the route to use
Due to this, I reverted to using If this fallback behavior is acceptable, I will document it explicitly in the PR. However, I would appreciate further input, especially from @cmo-pomerium, to confirm whether this is an expected limitation or if there's a recommended workaround to enable Unix domain socket communication. Also Sir @kmartens27 may you please review and guide how to improve this .Thanks! |
Hi @biru-codeastromer, I think at this point the PR will be closed. As we have not gotten further confirmation about the instructions/whether or not it is using the correct method, closing it for the time being is the best course of action. However, if you are able to confirm or enhance the instruction further to be in line with what the expected behaviors are, you are more than welcome to create a new PR building on the work from this one. Thanks as always for your efforts and contributions. |
@kmartens27 Are you aligned with it 🤗? |
Hi @biru-codeastromer, I think that's a great idea and definitely want to make sure it's aligned with GSoC if that is your main goal. I think you've got a great plan and am happy to help in whatever ways I can (via the proper channels). |
Thank you so much, @kmartens27 for your response ! . Yes, for now, I’m focusing on aligning things with gsoc, but not limited to gsoc. I genuinely enjoy being part of this community, which is why I’ve tried to not keep my contributions limited to gsoc related only... It has been a great experience, and I definitely plan to continue contributing again thoroughly after the application period to the community. Also looking forward to continuing further discussions on our open PR #7841 till then😇. |
Hi @kmartens27, Just wanted to clarify whether we should wait for official UDS support in Pomerium before updating the Jenkins reverse proxy docs for it? |
or should we give a note / alert in the docs as maybe
do you have any views in it |
I don't think it's worth providing this information if it does not work. Even with providing a note, it can be misleading and it would be best to avoid providing incorrect/non-operable instructions. If it's not supported then it does not make sense to provide instructions to say otherwise. Thanks very much for your work on this and continued efforts for the project though! |
Sure got it thanks for the feedback regarding that... |
Fixes #6893
Changes Made:
config.yaml
anddocker-compose.yaml
in the documentation of unix domain sockets part to demonstrate the new configuration.Testing Done:
1. Initial Setup:
docker-compose.yaml
with Jenkins and Pomerium configurations.http://localhost:8080
.2. Pomerium Configuration:
config.yaml
with placeholders for sensitive information.config.yaml
.3. Integration and Running Services:
docker-compose.yaml
to include Pomerium, linked with Jenkins using Unix domain sockets.https://jenkins.localhost.pomerium.io
.4. JWT Authentication:
5. Verification:
https://verify.localhost.pomerium.io
.6. Authorization Testing:
7. Functionality Testing:
Please review and provide feedback.
Additional note -
Removed the version field from docker-compose.yaml as it is no longer required with newer versions of Docker Compose and caused errors during local testing.