Troubleshooting your Anaconda repository installation (AER 2.31)

I Cannot connect to the server on port x

This could be because you are behind a firewall. Check if your iptables rules are blocking your ports:

iptables -L -n

If a rule blocks a port you want to use then you must allow the port:

sudo iptables -t nat -F
sudo iptables -A INPUT -p tcp -m tcp --dport <PORT> -j ACCEPT
sudo service iptables save
sudo service iptables restart

“No environment named “search” exists in C:\Anaconda\envs” when using “anaconda search” on Windows

If anaconda-client is not yet installed and you try to search for a package on using the ‘anaconda’ command you may receive the following error message:

C:\Users\username>anaconda search -t conda packagename
No environment named "search" exists in C:\Anaconda\envs

This error occurs because the Windows version of Anaconda contains an anaconda.bat file, that is used for setting environment paths and switching environments, and if anaconda-client is not installed this batch file is called instead. Once you install anaconda-client the anaconda search command should work again:

conda install anaconda-client
anaconda search -t conda packagename

Anaconda upload fails while behind a reverse proxy

When configuring Anaconda Client to connect to an Anaconda Repository behind a reverse proxy, the anaconda upload command may appear to try connecting to the internal hostname rather than the external configured one.

This can be corrected in the settings of the reverse proxy, such as Nginx or Apache.

In Nginx, add the setting proxy_set_header Host $host; to access the internal host with the external hostname.

In Apache, turn on the option ProxyPreserveHost.

Other reverse proxies will each have their own settings to handle hostnames correctly. For example, some other reverse proxies use a settings syntax such as http_proxy=id:passwd@proxyhost:port.

Start Anaconda Repository application as a foreground process

Anaconda Repository should normally be started as a daemon. For troubleshooting it can instead be started as a foreground process on a specified port:

anaconda-server --port 8080

Stop the application with control-c.