Skip to content
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 gdcc/nginx:unstable image and dev_nginx container for IntelliJ Payara plugin workaround #10088

Merged
merged 4 commits into from Nov 6, 2023

Conversation

beepsoft
Copy link
Contributor

@beepsoft beepsoft commented Nov 2, 2023

What this PR does / why we need it:

Adds a nginx container to the docker setup. This could be used for various proxying stuff, but it is primarily added to work around a problem with the IntelliJ Payara plugin. It doesn't allow remote redeployment in case the Payara admin is served via HTTPS using a self-signed certificate, which is the case of the default dataverse container installation.

For more context see this discussion: https://dataverse.zulipchat.com/#narrow/stream/375812-containers/topic/faster.20redeploy

This nginx configuration provides an HTTP endpoint at port 4849, and proxies requests to the Payara admin console's HTTPS 4848 endpoint.

Special notes for your reviewer:

You need IntelliJ IDEA Ultimate Edition to have remote deployment available in the Payara plugin.

Suggestions on how to test this:

Build and start the Dataverse containers:

mvn -Pct clean package
mvn -Pct docker:run
  1. Go to the Payara admin console (either at https://localhost:4848 or http://localhost:4849) and uninstall the dataverse application under Applications.
  2. Install Payara plugin (https://plugins.jetbrains.com/plugin/15114-payara-platform-tools). You seem to need IDEA Ultimate Edition. You may apply for a free license here: https://www.jetbrains.com/community/education/
  3. Add a remote run config and configure it to connect to localhost 4849 and then run it.
  4. Try Run > Debugging actions > Update '...' application (cmd+f10) > Redeploy
  5. In ~20 seconds it should rebuild and redeploy the application inside docker

kcondon and others added 4 commits August 4, 2023 12:09
Add export loop fix, 2nd serve for v5.14 release
Added a nginx container to the docker setup. This could be used for
various proxying stuff, but it is primarily added to work around a problem
with the IntelliJ Payara plugin. It doesn't allow remote redeployment in
case the Payara admin is served via HTTPS using a self-signed certificate,
which is the case of the default dataverse container installation.

This nginx configuration provides an HTTP endpoint at port 4849, and proxies
requests to the Payara admin console's HTTPS 4848 endpoint.

From the IntelliJ Payara plugin one has to specify the localhost 4849 port
(without SSL).
@pdurbin
Copy link
Member

pdurbin commented Nov 6, 2023

Just gave @sekmiller a demo. 😄

Great stuff, @beepsoft !!! Thanks! As we discussed, I'll add a few docs and merge it.

Relates to:

Copy link
Member

@pdurbin pdurbin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This working AMAZINGLY well! Merging! Thanks, @beepsoft!! 🎉 🚀

I'll add some docs in a new PR.

@pdurbin pdurbin merged commit 84b78e8 into IQSS:develop Nov 6, 2023
9 of 10 checks passed
@pdurbin pdurbin added this to the 6.1 milestone Jan 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants