diff --git a/api/http/proxy/factory/docker.go b/api/http/proxy/factory/docker.go index 513b5731d..c771cb0c2 100644 --- a/api/http/proxy/factory/docker.go +++ b/api/http/proxy/factory/docker.go @@ -32,12 +32,13 @@ func (factory *ProxyFactory) newDockerLocalProxy(endpoint *portainer.Endpoint) ( } func (factory *ProxyFactory) newDockerHTTPProxy(endpoint *portainer.Endpoint) (http.Handler, error) { + rawURL := endpoint.URL if endpoint.Type == portainer.EdgeAgentOnDockerEnvironment { tunnel := factory.reverseTunnelService.GetTunnelDetails(endpoint.ID) - endpoint.URL = fmt.Sprintf("http://127.0.0.1:%d", tunnel.Port) + rawURL = fmt.Sprintf("http://127.0.0.1:%d", tunnel.Port) } - endpointURL, err := url.Parse(endpoint.URL) + endpointURL, err := url.Parse(rawURL) if err != nil { return nil, err } diff --git a/api/http/proxy/factory/kubernetes.go b/api/http/proxy/factory/kubernetes.go index 1d96d3fd5..2b04b795b 100644 --- a/api/http/proxy/factory/kubernetes.go +++ b/api/http/proxy/factory/kubernetes.go @@ -52,9 +52,9 @@ func (factory *ProxyFactory) newKubernetesLocalProxy(endpoint *portainer.Endpoin func (factory *ProxyFactory) newKubernetesEdgeHTTPProxy(endpoint *portainer.Endpoint) (http.Handler, error) { tunnel := factory.reverseTunnelService.GetTunnelDetails(endpoint.ID) - endpoint.URL = fmt.Sprintf("http://localhost:%d", tunnel.Port) + rawURL := fmt.Sprintf("http://localhost:%d", tunnel.Port) - endpointURL, err := url.Parse(endpoint.URL) + endpointURL, err := url.Parse(rawURL) if err != nil { return nil, err }