|
| 1 | +:title: Using a Proxy Server |
| 2 | +:description: How to configure Deis to use a proxy server. |
| 3 | + |
| 4 | +.. _using-a-proxy-server: |
| 5 | + |
| 6 | +Using a Proxy Server |
| 7 | +==================== |
| 8 | + |
| 9 | +In some environments, HTTP connections must pass through a proxy. The Deis builder component supports |
| 10 | +proxies by respecting the proxy-related environment variables defined in ``/etc/environment_proxy``. |
| 11 | + |
| 12 | +Additionally, Docker is also configured to respect the settings in this file. |
| 13 | + |
| 14 | +By default, ``/etc/environment_proxy`` has all environment variables set to blank values: |
| 15 | + |
| 16 | +.. code-block:: console |
| 17 | +
|
| 18 | + HTTP_PROXY= |
| 19 | + HTTPS_PROXY= |
| 20 | + ALL_PROXY= |
| 21 | + NO_PROXY= |
| 22 | + http_proxy= |
| 23 | + https_proxy= |
| 24 | + all_proxy= |
| 25 | + no_proxy= |
| 26 | +
|
| 27 | +.. note:: |
| 28 | + |
| 29 | + Proxy settings must be respected by the applications you're building. |
| 30 | + When using custom buildpacks, make sure they respect proxy settings. |
| 31 | + |
| 32 | + |
| 33 | +Configuring before server launch |
| 34 | +-------------------------------- |
| 35 | + |
| 36 | +Before provisioning the servers using the provision scripts in the Deis repository, edit |
| 37 | +``contrib/coreos/user-data.example`` and replace the contents of the file to suit your environment. |
| 38 | + |
| 39 | +For example: |
| 40 | + |
| 41 | +.. code-block:: console |
| 42 | +
|
| 43 | + - path: /etc/environment_proxy |
| 44 | + owner: core |
| 45 | + content: | |
| 46 | + HTTP_PROXY=http://proxy.example.com:3128 |
| 47 | + HTTPS_PROXY=http://proxy.example.com:3128 |
| 48 | + ALL_PROXY=http://proxy.example.com:3128 |
| 49 | + NO_PROXY="127.0.0.1,localhost,.example.com" |
| 50 | + http_proxy=http://proxy.example.com:3128 |
| 51 | + https_proxy=http://proxy.example.com:3128 |
| 52 | + all_proxy=http://proxy.example.com:3128 |
| 53 | + no_proxy="127.0.0.1,localhost,.example.com" |
| 54 | +
|
| 55 | +After running ``make discovery-url`` and provisioning your servers, the platform will come up with |
| 56 | +your proxy settings. |
| 57 | + |
| 58 | +Configuring after server launch |
| 59 | +------------------------------- |
| 60 | + |
| 61 | +It's also possible to configure these settings after the server has been provisioned, but this will |
| 62 | +result in downtime of the Deis platform as components are restarted. |
| 63 | + |
| 64 | +You'll need to edit ``/etc/environment_proxy`` on all CoreOS hosts (as the builder component can |
| 65 | +be relocated to any host in the cluster). Then, restart Docker with ``sudo systemctl restart docker`` |
| 66 | +and monitor Deis components with ``deisctl list``. It may be necessary to restart components |
| 67 | +if they do not recover automatically from the Docker restart. |
0 commit comments