# Online installation behind a Proxy server

This section describes how to setup an Akamas Server behind a proxy server and to allow Docker to connect to the Akamas repository on AWS ECR.

### Configure Docker daemon <a href="#proxysetup-dockerdaemon" id="proxysetup-dockerdaemon"></a>

First, create the `/etc/systemd/system/docker.service.d` directory if it does not already exists. Then create or update the `/etc/systemd/system/docker.service.d/http-proxy.conf` file with the variables listed below, taking care of replacing `<PROXY>` with the address and port (and credentials if needed) of your target proxy server:

```
[Service]
Environment="HTTP_PROXY=<PROXY>"
Environment="HTTPS_PROXY=<PROXY>"
```

Once configured, flush the changes and restart Docker with the following commands:

```bash
sudo systemctl daemon-reload
sudo systemctl restart docker
```

For more details, refer to the official documentation page: [Control Docker with systemd](https://docs.docker.com/config/daemon/systemd/#httphttps-proxy).

### Configure the Akamas containers <a href="#proxysetup-configurethecontainers" id="proxysetup-configurethecontainers"></a>

To allow the Akamas services to connect to addresses outside your intranet, the Docker instance needs to be configured to forward the proxy configuration to the Akamas containers.

Update the `~/.docker/config.json` file adding the following field to the JSON, taking care to replace `<PROXY>` with the address (and credentials if needed) of your target proxy server:

```json
{
  # ...
  "proxies": {
    "default": {
      "httpProxy": "<PROXY>",
      "httpsProxy": "<PROXY>",
      "ftpProxy": "<PROXY>",
      "noProxy": "localhost,127.0.0.1,/var/run/docker.sock,database,optimizer,campaign,analyzer,telemetry,log,elasticsearch,metrics,system,license,store,orchestrator,airflow-db,airflow-webserver,kong-database,kong,user-service,keycloak,logstash,kibana,akamas-ui,grafana,prometheus,node-exporter,cadvisor,konga,benchmark"
    }
  }
}
```

For more details, refer to the official documentation page: [Configure Docker to use a proxy server](https://docs.docker.com/network/proxy/).

## Run Akamas <a href="#proxysetup-runakamas" id="proxysetup-runakamas"></a>

Set the following variables to configure your working environment, taking care to replace `<PROXY>` with the address (and credentials if needed) of your target proxy server:

```bash
export HTTP_PROXY='<PROXY>'
export HTTPS_PROXY='<PROXY>'
```

Once configured, you can log into the ECR repository through the AWS CLI and start the Akamas services manually.
