Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

Changing Settings in ProGet Keeps Resulting in a "502 Bad Gateway" Error



  • I've recently gotten ProGet set up, and I'd like to mess around with some of the settings before setting up any feeds, but the error mentioned in the title keeps showing up.

    The only way to fix it is to restart the Docker containers ('docker-compose down; docker-compose up -d'). If I attempt to change any settings though, the issue just pops right back up.

    The issue is also present when attempting to uninstall the AWS and Azure extensions (I haven't tried the other two yet).

    Anything I can try? I'm on ProGet 5.3.30 (Build 7), running behind an NGINX reverse proxy.

    p.s. sorry if this is a duplicate of a ticket - I wasn't sure if it was working, as I'm on the free plan.



  • If it helps, I'm getting this when I run curl directly on the Docker instance (without the NGINX proxy in the way):

    curl: (56) Recv failure: Connection reset by peer
    

  • inedo-engineer

    Hi @hwittenborn,

    Am I correct to say that the 502 errors are not with the NGINX proxy in front of it as well? Is this only when you are uninstalling the extensions? If not, what other settings are you changing when you see this issue?

    Thanks,
    Rich



  • @rhessinger I haven't tried connecting from a web browser without NGINX in the way, as my setup blocks any ports besides HTTP ports (80 and 443) from leaving the machine (which is a CLI-only server). I'll try to see if I can find an error code after writing this message though.

    Besides when uninstalling extensions, the issue also appeared to pop up when modifying some settings under Advanced Settings, including Web.CustomHomePageHtml and Web.HideHomePageFromAnonymousUser.

    I don't know how related it is, but changing the value for the Customer Experience & Improvement Program isn't causing it to return a 502.


  • inedo-engineer

    Hi @hwittenborn,

    Let me do some testing on my side and I'll let you know what I find. What OS is your Docker engine running on?

    Thanks,
    Rich



  • Sorry, completely forgot about checking.

    Anyway, I tried checking for the status code with curl -I on the system running the ProGet image (this is where NGINX wouldn't be involved), but the same Connection reset by peer is showing up, without a status code.

    What OS is your Docker engine running on?

    The host system is running Ubuntu Server 20.04.


  • inedo-engineer

    Hi @hwittenborn,

    I took a deeper look into this and it looks to work as expected. When it comes to Docker containers, we can't automatically restart the website like we can on Windows. So anytime that a setting is modified in the Advanced Settings or an extension is installed or removed, the docker container for ProGet will need to be restarted. In older versions of the image, we attempted to display a message to restart the container, but that implementation did not always work as designed so it was removed. I have forwarded this over to our products team to review any possible solutions that we could make in ProGet 6 to make this more obvious. I'm also working on ways to update our documentation to make this a bit clearer.

    Thanks,
    Rich



  • Hi,

    If it's not possible to restart the ProGet process(es), would the following approach work?

    • When a restart is required, kill the process(es) so the Docker container exits and quits.
    • Make the container start back up through the --restart unless-stopped Docker option.

    I'm wanting the processes to be killed by the container itself, without me needing to do anything. Docker would then, again, start the container back up again through the --restart unless-stopped option.



  • Just adding a side note:

    Allowing the container to automatically restart would allow everything to be automated, thus preventing me having to enter into my server and manually restart the ProGet container.


  • inedo-engineer

    Hi @hwittenborn,

    Thanks for the additional information. We talked about this in our team meeting this week and we decided we are going to clean up when restarts are needed and we are hoping to give better messaging to the user when a container needs to be restarted. Some of the restart requirements are leftover from previous requirements that have since changed. So hopefully we can make this process a bit easier in the future.

    Thanks,
    Rich


Log in to reply
 

Inedo Website HomeSupport HomeCode of ConductForums GuideDocumentation