Deploying Connectware Behind a Corporate Proxy
Configure system, Docker, and Connectware proxy settings for deployment behind corporate proxies.
Deploy Connectware on a host whose Internet access is routed through a corporate proxy. This guide walks through the host, Docker, and Connectware proxy settings needed to install and run Connectware in such an environment.
Prerequisites
A valid Connectware license.
Docker and Docker Compose installed on your system.
The address and port of your corporate proxy.
The examples on this page use the following placeholders. Replace them with values from your environment:
${PROXY_HOST}— hostname or IP address of the corporate proxy.${PROXY_PORT}— port the proxy listens on.
Proxy Behavior Across Applications
Proxy configuration across applications can vary:
Some tools recognize
http_proxy,https_proxy, andno_proxy(lowercase).Others may use
HTTP_PROXY,HTTPS_PROXY, andNO_PROXY(uppercase).Some software may require both or use custom proxy settings.
General recommendations:
Set both lowercase and uppercase variants of proxy variables.
Avoid IP addresses unless known to be used directly by the application.
Hostname resolution may fail under proxy settings unless explicitly configured.
Configuration
Verifying Host and Proxy Server Reachability
Confirm the host can reach the proxy server before configuring anything else:
The ping command should report a successful reply with no packet loss.
System-Wide Proxy Configuration
Apply proxy settings system-wide so every shell session inherits them:
Create a script in
/etc/profile.d/. Shell scripts in this directory run at login for every user.
Add the following content and save the file:
Make the script executable:
Open a new shell session or log out and back in to apply the changes. Verify that the variables are set:
Preserving Proxy Settings for Sudo
By default, sudo strips environment variables. Preserve the proxy variables for sudo invocations:
Create a sudoers drop-in file:
Add the following line and save the file:
APT Proxy Configuration
On Debian-based systems, APT does not read the shell environment variables and needs its own proxy configuration. This step is not required to run Connectware, but without it APT cannot install software through the proxy.
Create an APT configuration file:
Add the following lines and save the file:
Docker Daemon Proxy Setup
The Docker daemon needs its own proxy configuration to pull images from the Internet:
Create the systemd drop-in directory for the Docker service:
Create the configuration file:
Add the following content and save the file:
Reload systemd and restart Docker:
Verify the configuration:
The output should list the HTTP_PROXY, HTTPS_PROXY, and NO_PROXY values you set.
Test that Docker can reach the Internet through the proxy:
The command should complete with Status: Downloaded newer image for hello-world:latest.
Container-Level Internet Access
Containers do not inherit the Docker daemon proxy settings. Configure proxy settings for containers globally through the Docker client config, or per container through environment variables.
To define global proxy settings for every container started by this user:
Create the Docker client configuration directory and the configuration file:
Add the following content and save the file. Include the Connectware service names in
noProxyso the containers can reach each other without going through the proxy:
Configuring the Connectware Environment File
Set the proxy in the Connectware environment file before launching the stack. The .env file is located in your installation directory, by default /opt/connectware/.
Open the environment file:
Add the following lines and save the file:
Verification
After applying the configuration, confirm that each layer can reach the Internet through the proxy:
Run
env | grep -i proxyand confirm the shell sees the proxy variables.Run
docker pull hello-worldand confirm the image pulls successfully.Start Connectware with
docker compose up -dand confirm the auth-server logs show successful outbound calls when a feature that requires Internet access is exercised (for example, an SSO login).
Last updated
Was this helpful?

